npm更新取消链接链接的包
我有一个项目,其中包含一个根节点包,其中包含由npm链接在一起的子包 – 这些子包相互依赖(列在package.json依赖项中),结构基本如下所示:
-rootpackage --subpackageA --subpackageB
假设subpackageA依赖于subpackageB,所以我把它们链接起来,避免在subpackageB的源代码发生变化之后,在subpackageA中发布/重新安装subpackageB。 链接工作得很好,直到我运行npm update
subpackageA,导致子包B被取消链接。
现在,我看到两个选项:
- 我理论上可以在每次
npm install
或npm update
后运行npm link
操作,以确保链接始终存在。 这在postinstall
的情况下适用于postinstall
,但是在更新的情况下,不postinstall
。 我不知道更新后会调用npm的任何postupdate命令。 - 也许有一种方法可以更聪明地做到这一点,也许用纱线 ,我也使用,在某种程度上,它可以防止取消链接或排除我的子包的更新,所以我不会失去我的子包之间的链接,但现在我不知道这样的方式。
有没有办法使这些选项之一工作或任何其他方式来解决这个问题? 我需要保持这个和其他的链接,所以我们不必在每次安装/更新后运行npm link
。 我无法在任何地方真的find关于这个问题的信息。 顺便说一句我正在使用节点6.4.0和NPM 3.10.3。