您如何使用NPM链接库和Angular CLI应用程序监视更改?

Agm*_*her 5 javascript node.js npm angular-cli angular

我有以下设置:

  1. 我正在开发的本地UI库
  2. 正在使用该库的Angular应用程序
  3. 我正在使用NPM链接,这样就不必在每次要测试使用它的应用程序中的更改时都发布该库。
  4. Angular应用程序通过Angular CLI(ng serve --aot)提供服务
  5. 我正在监视UI库的更改,以便它使用 gulp watch

我有两个问题:

每当我对库进行更改时,gulp watch都会触发新的构建。但是,此构建失败,并出现以下错误:

Error: EPERM: operation not permitted, unlink

我可以通过触发UI库的手动构建来解决此问题,但是还有另一个问题:正在运行的应用程序会看到对链接库的更改,并在UI库构建开始后立即触发自己的构建。这将创建竞争条件,从而Angular CLI将不会等待UI库完成构建。

使用Angular CLI应用程序使用NPM链接来监视本地NPM库中的更改的正确的标准方法是什么?