一次开发多个 npm 模块的方法(具有交叉依赖关系)



我们的组织有 3 个模块用于开发,我们希望继续制作更多模块。

我们遇到的麻烦是找到支持这种开发环境的工具。

请考虑以下事项:

模块A模块B模块C

模块 C 依赖于模块 A 和模块 B模块 B 依赖于模块 A

当我们对 ModuleB 进行更改时,我们必须手动增加 ModuleC 的 package.json 对 ModuleB 的依赖(因为它利用了 npm-shrinkwrap)

当我们对 ModuleA 进行更改时,我们不一定必须增加 ModuleB 的依赖关系(因为我们可以进行 semver 模式匹配),除非它是主要版本更改,但是,我们确实必须重建模块 B 并提升其版本,因为它消耗 ModuleA 并提供可分发对象。然后,我们必须在 ModuleC 的 package.json 中增加 ModuleA 和 ModuleB 的依赖关系。

这一切都让人感到难以置信的麻木,而且,这是一个脆弱的过程,感觉它可以自动化。

其他组织如何处理这个问题?真的有没有办法以这种方式开发模块?

做到这一点而不拔

头发的唯一方法是使用mono-repo,并使用像Lerna.https://github.com/lerna/lerna这样的工具

最新更新