npm更新取消链接链接的包

我有一个项目,其中包含一个根节点包,其中包含由npm链接在一起的子包 – 这些子包相互依赖(列在package.json依赖项中),结构基本如下所示:

-rootpackage --subpackageA --subpackageB 

假设subpackageA依赖于subpackageB,所以我把它们链接起来,避免在subpackageB的源代码发生变化之后,在subpackageA中发布/重新安装subpackageB。 链接工作得很好,直到我运行npm update subpackageA,导致子包B被取消链接。

现在,我看到两个选项:

  1. 我理论上可以在每次npm installnpm update后运行npm link操作,以确保链接始终存在。 这在postinstall的情况下适用于postinstall ,但是在更新的情况下,不postinstall 。 我不知道更新后会调用npm的任何postupdate命令。
  2. 也许有一种方法可以更聪明地做到这一点,也许用纱线 ,我也使用,在某种程度上,它可以防止取消链接或排除我的子包的更新,所以我不会失去我的子包之间的链接,但现在我不知道这样的方式。

有没有办法使这些选项之一工作或任何其他方式来解决这个问题? 我需要保持这个和其他的链接,所以我们不必在每次安装/更新后运行npm link 。 我无法在任何地方真的find关于这个问题的信息。 顺便说一句我正在使用节点6.4.0和NPM 3.10.3。