问题描述
我正在使用 yarn workspaces
处理一个大型项目。我知道纱线工作区基本上做了两件事
- 它可以自动执行我们多年前想要共享私有包时必须手动执行的符号链接过程
- 它将所有类似的包提升到
node_modules
的顶部,以提高效率。
但是,我注意到我的包仍然在它们自己的 node_modules
中包含代码,我不知道为什么。当我制作一个示例 monorepo 应用程序并说我在其中安装 lodash
时,它会直接进入根目录 node_modules
。
yarn 为什么以及何时决定在包的 node_modules
中安装包?
解决方法
我在 yarn 的 Discords 上找到了答案。 yarn
将始终提升,除非它与另一个版本冲突。