组件库的定制构建


    该命令必须使用在通过 nowa init 创建的项目中,请在项目根目录下执行。

    nowa lib 会读取 abc.json 中的 libraries 参数,按配置构建出所有的依赖库。

    一个典型的配置如下:

    其中

    • Uxcore 是构建出的库对外暴露的全局变量
    • output 定义输出的文件名,输出文件会放在 —dist 配置的目录下,另外也会拷贝一份到 src/lib 目录
    • 然后生成临时文件
    • 以这份临时文件为构建入口(entry)进行 webpack 构建,输出 uxcore.js
    • 对输出文件进行压缩,生成 uxcore.min.js
    • 拷贝 uxcore.jsuxcore.min.jssrc/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