感谢您对cabinx团队的支持,新的cabinx的开发模式发生了一些变化,使入手和开发更加简单,现在我们将花10分钟左右的时间了解新模式的特性以及如何从老模式迁移过来。
区别
历史版本
- 之前的项目目录会有dev,src,dist目录,以及一系列复杂的路径规范,比如必须将项目放在kayak-project下边,对刚接触cabinx的同学不太友好。
- 每个项目都需要安装编译器,但是大部分情况下,所有项目安装的编译器是同一个版本。
- 开发的调试参数
debug-xxx=http://...
在输入时容易出错 - 手机端项目开发调试不方便
- 还有一些与业务不相关操作
新版本
- 去掉
dev
,src
目录,业务代码直接放在项目的根目录。 - 项目不需要放在
kayak-project
下边。 - 编译器改为全局安装,安装一次所有项目都可以使用。
- 提供了调试管理页面,开发者可以在页面上打开需要调试的页面。
- 提供了手机端调试和开发的方案。
- 开发者可以自由配置
dev-server
的指向,开发服务启动后,编译器会自动将代码部署为运行时要求的目录结构,而无需开发者关心。
开始迁移
全局安装cabinx-cli
- Windows
- MacOS
npm install cabinx-cli -g
sudo npm install cabinx-cli -g --unsafe -perm
目录修改
- 创建一个新的分支
cabinxcli
- 将业务代码(路径为:
dev/ <your_project_name> /
)下边的所有文件 copy 到项目根目录下(与dev目录平级)。 - 删除dev,src,nodemodules目录。
代码修改
- 删除
package.json
中,cabin-service-cli
的配置 - 如果使用了某些 npm 包,但是在 package.json 中没有配置(eg. axio,qs 等),请自行添加到依赖列表中
- 将
main.js
里边window.aDefine
的定义删除 - 重新安装依赖:运行
npm install
异常
与dev 目录有同级代码,做一些工程化功能的代码?
问题原因是根目录下的所有文件夹,除了dev,src,nodemodules,mobileapp,_deploy_ignore 目录都会参加编译,可以在项目根目录下创建 _deploy_ignore 文件夹,将相关代码放在其中,这样就可以避免一些私有工程化逻辑参与编译。