1、简介
Nodejs
的依赖包安装,几乎所有人都知道是执行 npm install
完了后,就会在目录下创建 node_modules
文件夹,然后所有的包都会放到这个目录下,但是如果我们多个工程都依赖同一个包的时候,就会导致,每个工程都要安装一次,浪费磁盘空间, 为了解决这个痛点, npm在7.0后也支持 workspace 模式
2、基本操作
基本环境,初始化一个测试包
mkdir workspaces
cd workspaces
npm init -y
创建a依赖包
npm init --workspace a
npm init -w a
// 这个时候在init的时候可以把a依赖的名称改成 组织/包名 这样方便进行发布, 这里改成@even-test组织,那么对应的依赖就是 @even-test/a
// 在package.json中会添加workspaces对应的数据如下
"workspaces": [
"a"
]
注意:以上的两个命令的效果一样的,两者都是创建a依赖包,注意 npm的版本需要在7.0以上
往指定的包中添加依赖
npm i lodash -w a // 表示往a的分包中添加lodash依赖
在yarn中进行添加分包的依赖
yarn workspace @even-test/a add lodash // 表示在a的分包中添加lodash依赖
当调整了npm的包的依赖的时候,那么需要进行重新链接
// npm
npm install -ws
// yarn
yarn install
注意:workspace在使用过程中的方便程度并不优于lerna,所以建议使用lerna工具