启用AoT时Angular应用程序上的运行时错误

启用AoT时Angular应用程序上的运行时错误,angular,angular-cli,angular5,Angular,Angular Cli,Angular5,我最近将我的应用程序的Angular版本从2.4更新为5.1.2,遵循此工具中的指导原则:。我还使用angular cli 1.6.3 现在,在更新之后,当运行ngserve时,一切都在开发模式下工作。另外,ng build(带或不带--aot标志)运行时没有错误。但是,ng serve--aot或ng serve--prod会产生运行时错误: 我发现调试这个问题非常困难,因为堆栈跟踪没有指向我编写的任何文件。这可能是一个引导问题吗 在这一点上,我不是在寻找这个问题的完整解决方案,而是关于我可

我最近将我的应用程序的Angular版本从2.4更新为5.1.2,遵循此工具中的指导原则:。我还使用angular cli 1.6.3

现在,在更新之后,当运行
ngserve
时,一切都在开发模式下工作。另外,
ng build
(带或不带
--aot
标志)运行时没有错误。但是,
ng serve--aot
ng serve--prod
会产生运行时错误:

我发现调试这个问题非常困难,因为堆栈跟踪没有指向我编写的任何文件。这可能是一个引导问题吗

在这一点上,我不是在寻找这个问题的完整解决方案,而是关于我可以从哪里开始寻找的建议

到目前为止,我已经尝试过:

  • 搜索类似问题时,这可能与:
  • 检查
    main.ts
    中的引导配置是否与一些示例匹配
  • 将节点从9.1.0更新为9.3.0(Vincent建议)
  • 创建了新的angular cli项目,并将polyfills.ts文件从新项目复制到现有项目

我从来没有弄清楚实际的问题是什么,但它肯定与动画有关。当我完全禁用应用程序的动画时,错误消失了,这并不理想,但可以作为临时修复,直到我有更多时间重新编写用于使用动画的任何模块和/或组件。

我的npm angular软件包没有匹配的版本号。在对齐所有库版本后,我能够同时使用
ngserve--aot
ngserve--prod

如果运行时能够在AOT出现之前温和地处理内部兼容性,这将是有意义的。现在我们有了AOT,性能是关键,因此运行时故障保护已经被剥离


动画效果也很好。

嗨!也许只是将节点更新到新版本就可以解决这个问题;)我知道这不是一个真正的解决方案,但我认为我面对了这个问题并解决了它。感谢你的建议,不幸的是,它没有帮助。大家好^^再次在我的提交中深入搜索我注意到我更新了节点,但解决问题的方法是将angular cli从1.5.2降级到1.5.0,它成功了,后来我更新到1.6.x,它仍在工作:)