组件库的定制构建
该命令必须使用在通过 nowa init
创建的项目中,请在项目根目录下执行。
nowa lib
会读取 abc.json
中的 libraries
参数,按配置构建出所有的依赖库。
一个典型的配置如下:
其中
Uxcore
是构建出的库对外暴露的全局变量output
定义输出的文件名,输出文件会放在—dist
配置的目录下,另外也会拷贝一份到src/lib
目录
- 然后生成临时文件
- 以这份临时文件为构建入口(entry)进行 webpack 构建,输出
uxcore.js
- 对输出文件进行压缩,生成
uxcore.min.js
- 拷贝
uxcore.js
和uxcore.min.js
到src/lib
目录(为避免dist
目录冲突,一般会把dist
目录移出版本管理,所以把src/lib
目录拿来用于存储依赖库文件)
nowa lib
接受以下候选参数:
-o, —loose
使用 babel es2015 的宽松模式来做代码转换-c, —keepconsole
保留源代码中的console.log
,默认会删除—skipminify
跳过压缩任务,默认会进行代码压缩—libraries
依赖库映射配置—skipinstall
跳过安装(将使用 node_modules 中已安装的组件),默认为false
- 引入 babel 的 polyfill,可直接使用 Object.assign 等类方法和 Map、Set、Promise 等类,默认为
false