lerna 链接与 lerna bootstrap

use*_*155 11 javascript lerna monorepo

我有一个 Lerna 项目,直到最近才使用lerna bootstrap --hoist. 这很有效,但我发现devDependencies许多子文件夹中的大部分都是相同的。升级到 Lerna v3 我读过lerna link convert.

lerna link convert 是否只是将所有子文件夹移动devDependencies到根目录,然后子文件夹扫描父文件夹node_modules以加载它们(NPM 的一个功能)?我注意到子文件夹中的依赖项更改为“file://”而不是私有 npm 存储,这表明一旦发布和使用它们就不会被加载。

此外,如果lerna bootstrap被删除,则dependencies不会安装子模块。用什么方法解决这个问题?

lee*_*rob -4

我的建议是利用 Yarn Workspaces 将包“提升”到根级别的能力。这将防止在包中嵌套相同的依赖项。

这是一个完整的示例相关教程。