老版本(3.0.x)的qap-cli使用webpack1.x并暴露了比较多的无用配置项给开发者,对开发者入门使用有较高的复杂度。在3.1.x中qap-cli与底层调试工具fie进行了打通。仅仅通过暴露语义化的配置接口,实现配置功能的快速替换。当然还包括hotreload等等一些新功能。
cnpm install -g qap-cli
对于老项目qap-cli 3.1.x是完全兼容的,开发者无需做任何修改。如果将项目迁移至新版,你需要按照本文档做以下迁移工作:
具体的配置信息解释可以参考:项目初始化
module.exports = { // 当前项目使用的fie套件 toolkit: 'fie-toolkit-nuke', toolkitConfig: { port: 8080, open: true, openTarget: 'demos/index.html', liveload: true, addPath: { simple: { path: './src/pages/' }, redux: { path: './src/pages/' }, data: { path: './data/' } }, devType: 'qap', webpack: { sourcemap: 'cheap-module-inline-source-map', uglify: true, hotreload: false, 'optimize-size': { nuke: false, webpack: false }, externals: { 'weex-rx': true, rax: true, nuke: true }, alias: { 'weex-rx': 'rax', '@ali/rx': 'rax', components: './src/components', page: './src/pages', util: './src/util', root: './src' }, report: true }, keepOld: true } };
webpack.config.js、gulpfile.js、.babelrc
等构建相关配置文件。可选:移除本地的项目dependency的webpack依赖、babel依赖。
然后重新install module。完成这一步以后,项目目录是不是清爽了很多?
新版qap-cli的页面入口规则默认为src/pages/页面名称/index.js
,构建结果为页面名称.js
。也就是说在qap应用中,可以通过qap:///页面名称.js
完成跳转。
运行qap debug开启新版的调试,qap项目升级常见问题
其他问题烦请加群 1551341770