lerna 学习
lerna all in one的code manage。将系统中的所有代码都放在一个项目中。
lerna开始
lerna init
初始化项目lerna init --independent
该配置项可以让模块单独发布
添加共依赖
lerna add loash
对某个子系统添加依赖
lerna add jquery --scope=xxxxx
xxxxx对应的是package.json中的的name
子模块依赖同一个lerna项目中其他模块
lerna add xxxxA --scope=xxxxB
xxxxA,xxxxB是package.json中的的name
这种依赖不会放到xxxxxB中的node_modules中,但是会添加到xxxxxB的package.json中去,他会自动检测到xxxxA隶属于当前项目,会采用symlink的方式关联过去
安装依赖
lerna bootstrap
删除依赖
lerna exec --scope=@fengyinchao/modulea npm uninstall husky
批量运行script脚本
lerna run test
运行所有模块中 test 命令lerna run --scope=xxxB test
运行模块XXXB中的test模块
抽离公共模块
lerna bootstrap --hoist
更新公共依赖
- 安装
lerna-update-wizard
- 执行
npm install --save-dev leran-update-wizard
./node_modules/.bin/lernaupdate