gpt4 book ai didi

从 Angular 7 迁移后,Angular 8 无法构建

转载 作者:行者123 更新时间:2023-12-05 07:17:54 25 4
gpt4 key购买 nike

在我将我的项目迁移到 Angular 8 之后,构建失败并出现了这个奇怪的错误:

    ERROR in HostResourceLoader: loader(C:/myapp/cli/src/app/pages/user-home/user-home.component.html) returned a Promise 
i 「wdm」: Failed to compile.

但是当我保存任何文件时,应用程序在重新编译后构建正常:

i 「wdm」: Compiling...
i 「wdm」: Compiled successfully.

因此,最初它无法在 Angular Compiler 资源加载器的这一特定行加载在 templateUrl 中指定的模板文件: https://github.com/angular/angular/blob/master/packages/compiler-cli/src/ngtsc/resource_loader.ts#L111并且不清楚模板 url 以何种方式与返回的 promise 错误相关。

可能出了什么问题,这个特定错误是什么意思?我猜这是资源加载器中的一些错误,因为即时重新编译有效但初始构建失败。

UPD

通过 ng update 命令从 Angular 7 迁移,因此变化很小。

我正在使用与 Angular 7 配合良好的 webpack 4,可能应该更改一些 webpack 选项。

从错误描述中不清楚错误的根本原因是什么。查看编译器的源代码没有发现任何问题。

尝试使用通过“templateUrl”使用一些标记模板从 7 迁移到 8 的纯(无 webpack)Angular 重现它。

最佳答案

因此 webpack 使用 @ngtools/webpack 插件,其中包括加载 Angular 模板。

我将 @ngtools/webpack 更新为 @angular/cli - ^8.3.15 - 并修复了初始错误.

但仍然存在一些 TypeScript 错误,ng update 命令更新了 TypeScript 版本,但它遗漏了两个应该更新到更高版本的库:

"@types/node": "^10.17.2"
"tslib": "^1.10.0"

然后我的项目运行成功。

关于从 Angular 7 迁移后,Angular 8 无法构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58598031/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com