我正在构建一个 node.js 应用程序,并同时开发应用程序所需的模块。一些模块具有 peerDependencies,我正在努力弄清楚如何最好地构建我的开发环境。
到目前为止我所拥有的:
/node-projects
|--/myApp
|----/node_modules
|------/symlink to module1
|------/symlink to module2
|
|--/module1
|
|--/module2
我用来npm link
在我的应用程序的 node_modules 中创建一个符号链接到我的项目根目录中的模块。这让我可以轻松地 git push/pull 单个模块以及我的应用程序。
但是,如果 module2 将 module1 指定为 peerDependency,我的应用程序将无法启动,从而给出 module2 找不到 module1 的错误。我认为这是因为它们实际上并不一起在 node_modules 目录中。
是否有一个我错过的难题将允许 module2 的符号链接识别 module1 的符号链接?还是我目前正在尝试通过 npm 完成的工作是不可能的?是否有更好的策略来保持我的自定义模块与 git/github 同步,同时在我的主应用程序中也需要它们?