Angular AOT 编译失败

Angular AOT compilation failed

我需要尽快将网站投入生产,并且正在研究 AOT 以提高性能(我的应用程序在 Chrome 上需要大约 3-4 秒才能加载,在 Firefox 上需要 8-10 秒,这是只是无法用于生产。

我遵循了 https://angular.io/docs/ts/latest/cookbook/aot-compiler.html 上的指南,但在编译部分遇到了困难...

如果我键入:node_modules/.bin/ngc -p tsconfig-aot.json 我会得到一个很好的 "Compilation failed",其中包含大约 10000 个错误的列表,例如这个:

Error at /myapp/aot/app/contact/admin/contact-list.component.ngfactory.ts:64:7: Supplied parameters do not match any signature of call target.

我无法解决所有问题,因为有些问题直接来自 Angular(我猜),例如:

Error at /myapp/node_modules/@angular/core/src/di/reflective_provider.d.ts:88:165: Cannot find name 'Map'.

编译失败是否与所有这些错误有关,如果我解决了这些错误,编译就会通过?如果是,即使 Angular 也会导致错误,例如我提供的错误,这是否正常?

谢谢!

注意:我使用的是 Angular 2.1.1.

有兴趣的人:

如果您有 Typescript 错误,编译器将失败(即使您忘记输入变量,例如 public myVar; 会抛出错误,public myVar: any; 会通过)。

angular 错误不应该出现,并且已通过在我的 package.json 中添加此依赖项为我解决了这个问题:

"@types/core-js": "^0.9.34"

我和kinkaz在同一条船上。对我有用的是从 angular.io 网站在 AoT 教程中建议的 tsconfig-aot.json 文件中删除以下内容...

直接删除,

"typeRoots": [ “../../node_modules/@types/” ]

来自 tsconfig-aot.json