从嵌套的 Lerna 包中移除依赖

Remove dependency from nested Lerna Package

我有一个 lerna 设置,其中 n 个包位于 packages/ 下。让我们举一个例子,其中一个包裹使用 express 而其他包裹不使用。

我怎样才能以 lerna 感知的方式从这个包中删除 express 以便更新根 package.json?

我可以使用 lerna add --scope 添加软件包,但似乎没有相应的删除功能。

只需从 package.json

中删除软件包

然后 运行

$lerna bootstrap

  1. package.json
  2. 中删除包
  3. 删除 node_modules 文件夹:rm -rf packages/{package_name}/node_modules
  4. 运行 lerna bootstrap

没有第 2 步,包仍然存在于 package-lock.json NPM 锁定文件中。

如果你想确保lerna bootstrap 更新specific package-lock.json in @org-name/package-name/ 而不是其他 package-lock.json 文件,执行:

  1. @org-name/package-name/package.json

  2. 中手动删除依赖项
  3. 运行:

lerna bootstrap --scope @org-name/package-name --no-ci --force-local