首页 > 解决方案 > “ng serve --aot”在监视的 Angular 库中未检测到 Html 更改

问题描述

描述

使用 ng serve --aot 启动项目时,未在库中检测到 Html 更改。库是使用 --watch 标志构建的,主项目是使用 --aot 提供的。在 html 更改时触发构建和服务过程并刷新页面,但 html 没有更改。重建后可以看到打字稿更改。Html 更改仅在您重新启动 ng serve --aot 进程时可见。

如果没有 --aot 标志,一切都会按预期工作。

npm 链接的外部库(不在同一个项目中)也存在同样的问题。

再生产

我对这个问题做了一个小重现:https ://github.com/V3nsla/aot-lib-html-changes

使用 --watch 标志 (ng build lib --watch) 重现问题构建库并使用 ng serve --aot 启动主项目。

在 LibComponent 的模板中进行一些更改并保存以触发构建过程。重新编译主项目后,不会反映 html 更改。

环境

Angular CLI: 7.3.0
Node: 10.12.0
OS: win32 x64
Angular: 7.2.3
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router

Package                            Version
------------------------------------------------------------
@angular-devkit/architect          0.13.0
@angular-devkit/build-angular      0.13.0
@angular-devkit/build-ng-packagr   0.13.0
@angular-devkit/build-optimizer    0.13.0
@angular-devkit/build-webpack      0.13.0
@angular-devkit/core               7.3.0
@angular-devkit/schematics         7.3.0
@angular/cli                       7.3.0
@ngtools/json-schema               1.1.0
@ngtools/webpack                   7.3.0
@schematics/angular                7.3.0
@schematics/update                 0.13.0
ng-packagr                         4.7.0
rxjs                               6.3.3
typescript                         3.2.4
webpack                            4.29.0

标签: htmlangularwebpackangular-cli

解决方案


推荐阅读