【问题标题】:Error during template compile of 'ea''ea' 模板编译期间出错
【发布时间】:2018-01-18 00:45:02
【问题描述】:

编译我的角度时遇到问题

“ɵa”模板编译期间出现错误 装饰器不支持函数调用,但在 'Injectable' 中调用了 'ɵmakeDecorator' 'Injectable' 调用 'ɵmakeDecorator'。

我该如何解决这个错误?

【问题讨论】:

  • 显示一些代码?
  • 这个运气好吗?从 Angular 4.x 升级到 5.2.2 和 angular-cli "^1.2.6" (不确定我之前安装的到底是什么......)升级到 1.6.4 后,我看到了几乎相同的错误(1.6.6 没有修复错误)。在我的项目中对“emakedecorator”进行了不区分大小写的完整搜索,包括 /node_modules,命中率为 0,所以这可能是构建过程生成的。
  • 我也面临同样的问题,下面的答案对我不起作用。目前我使用的是 5.2.0。我试过 Angular 核心版本 4.4.3 但没有运气

标签: angular progressive-web-apps


【解决方案1】:

所以,我在尝试将 Angular 从 4.x 更新到 5.x 时遇到了同样的问题。

这个问题与 AOT 编译有关,但不要再问我了。我无法详细解释。

但是,请转到您的 tsconfig.app.json 并添加以下行:

"paths": { "@angular/*": ["../node_modules/@angular/*"] },

还要确保在同一个文件中,模块设置为“es2015”。

希望这对你有用!

【讨论】:

  • 感谢回答问题,我去看看。
【解决方案2】:

我会检查您正在使用的任何第 3 方工具,以确保它们不依赖于旧版本的 Angular。

当我将 Angular 从 4.x 更新到 5.x 时,我看到了同样的错误,后来我注意到我的第 3 方库之一实际上正在安装它自己的 Angular 4.x 版本作为开发依赖项。

不幸的是,在我的情况下,这个库没有支持 Angular 5.x 的更新版本,所以我不得不把它换掉。

【讨论】:

  • 谢谢肖恩,这对我来说很有意义
【解决方案3】:

如果您在 Angular 项目之外导入文件,则会出现此错误。就我而言,我不小心从另一个项目中导入了一个同名的 TypeScript 文件。所以搜索像../..这样的可疑导入。

【讨论】:

    猜你喜欢
    • 2018-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多