项目模式与源码位置
由于创建CabloyJS项目有两种模式:项目模式
、Lerna源码模式
。那么在这里,我们就分别针对这两种模式说明如何查看CabloyJS的核心源码
1. 项目模式
-
适用场景:如果是开发正式的业务系统,建议用
项目方式
-
参考链接:快速开始
-
目录结构:CabloyJS核心模块和源码在
node_modules
中 -
优点:
- 项目源码目录仅包含自定义的业务模块,目录结构清晰
- CabloyJS核心模块的前端和后端代码都进行了编译打包。因此,执行npm脚本速度有显著提升,比如:启动前端开发服务、执行项目编译打包、启动后端服务,等等
如果想查看某个核心模块的源码,可有两种方式:
-
可以直接在
node_modules
中查找 -
可以通过以下指令把模块代码安装至项目目录:
-
套件位置:
{project}/src/suite-vendor
-
模块位置:
{project}/src/module-vendor
-
- 1# 安装基础模块:a-base-sync
- 2$ npm run cli :store:sync a-base-sync
- 3# 安装CMS模块:a-cms
- 4$ npm run cli :store:sync a-cms
- 5# 安装NodeJS工作流引擎模块:a-flow
- 6$ npm run cli :store:sync a-flow
最佳实践:如何对源码进行调试
在模块编译与发布章节中,我们知道了全局模块优先加载dist
目录,而dist
目录都是编译之后的前端代码和后端代码,那么我们如何进行源码调试呢?
-
答案很简单:就是把
dist
目录改名。这样系统找不到dist
目录,就会尝试加载源码目录 -
以此类推:
node_modules
、src/module-vendor
、src/suite-vendor
中的全局模块都可以按此方式进行
2. Lerna源码模式
由于CabloyJS的所有核心模块源码都采用lerna
进行统一管理,因此,也可以直接克隆CabloyJS的源码仓库
-
适用场景:如果是学习和研究CabloyJS,或者贡献代码,建议用
Lerna源码方式
-
参考链接:快速开始(源码模式)
-
目录结构:CabloyJS核心模块和源码在项目根目录的
src/module-system
中 -
优点:
- 便于随时跟进并查阅CabloyJS核心模块的源码
-
缺点:
- 由于是CabloyJS最新提交的代码,存在不稳定的隐患
- 因为所有核心模块的源码都需要进行编译,所以执行npm脚本速度比
项目方式
慢(当然,由于进行了特别的优化处理,所以并不是很慢),比如:启动前端开发服务、执行项目编译打包、启动后端服务,等等
评论: