05 2020 档案
摘要:loader 文档定义 loader 用于对模块的源代码进行转换。loader 可以使你在 import 或"加载"模块时预处理文件。因此,loader 类似于其他构建工具中“任务(task)”,并提供了处理前端构建步骤的强大方法。loader 可以将文件从不同的语言(如 TypeScript)转换
阅读全文
摘要:同 使用方法基本一样,只是npm 变成cnpm。 都是用来进行依赖包管理的。 异 镜像源不同,cnpm是为了解决 npm在国外,下载速度慢的问题而出现的。 cnpm的淘宝镜像与npm镜像的同步时间间隔,会导致有些包出现延迟更新。 cnpm本身就是一个 npm包,使用时 npm install cnp
阅读全文
摘要:node需要12.x LTS版本 cnpm install 碰到 Warning: Accessing non-existent property xxxx of module exports inside circular dependency 大意是说 : 在依赖循环查找的过程中,使用了一个没有
阅读全文
摘要:缓存 1. 目的: 提升二次构建速度 2. 思路 babel loader开启缓存 terser webpack plugin开启缓存‘ 使用cache loader或者hard source webpack plugin 缩小构建目标 1. 目的:尽可能的少构建模块(比如:babel loader
阅读全文
摘要:构建配置抽离成npm包的意义 通用性 业务开发和无需关注构建配置 统一团队构建脚本 可维护性 构建配置合理的拆分 README文档、changeLog文档等 质量 冒烟测试、单元测试、测试覆盖率 持续集成 构建配置管理的可选方案 通过多个配置文件管理不同的环境, 参数进行控制 将构建配置设计成一个库
阅读全文
摘要:```/** * 泛型: 不预先确定的数据类型,具体的类型在使用的时候才能确定。 */ function log(value: T):T { console.log(value); return value }// 调用log(['a'])log(2)log(['a','b'])// type Log = (value:T) => T// let mylog:Log = logi...
阅读全文
摘要:``` interface Human { // new (name:string):void; //不能约束类的构造函数 name:string; eat():void; } class Asian implements Human { constructor(name:string){ //接口也不能约束类的构造函数 this.name = name } name:string; // pri
阅读全文
摘要:```class Dog { constructor(name:string){ this.name = name; } name:string run(){} private pri(){} protected pro(){} readonly legs:number = 4 static food: string = "bones"...
阅读全文
摘要:```// 对象接口类型interface List { readonly id:number; name: string; // [x:string]:any; //字符串索引签名, 用任意字符串索引List得到任意结果 age?:number; //可选属性 可以有 可以没有}interface Result { data:List[]}function r...
阅读全文
摘要:注意:相关的model里要有重置此props数据的effect。
阅读全文
摘要:``` // 原始类型 let bool:boolean = true; let num:number |undefined |null = 123; let str:string = "abc"; // str = 123; // 数组 let arr1 : number[] = [1,2,3]; let arr2:Array = [1,2,3]; let arr3: Array = [1, 2
阅读全文
摘要:1.不支持柱形图Geom色块拼接(本来考虑可以渐变,但是由于 1.柱图高度的不确定性 + 2.bizcharts的 渐变色不支持像素值,所以无法实现上方色块固定高度这样的效果, 但按固定高度比例的效果可以实现) 解决方法:思路 1. 自定义shape 2.利用堆叠柱状图来显示这个效果 3.使用geo
阅读全文