在过去的6个月里,我一直在使用Angular构建仪表板应用程序,那时我使用JiT编译和gulp浏览器同步进行了非常好的开发工作流程,以便在进行更改时获得即时更新。哪个做得很好。
我已经到了我很乐意部署生产版本的地步,但是,我遇到了AoT和汇总问题。
我已经按照angular.io指南进行了操作,但得到了以下内容
ERROR Error: Uncaught (in promise): Error: Runtime compiler is not loaded
Error: Runtime compiler is not loaded
at _throwError (build.js:5036)
at Compiler.compileModuleAsync (build.js:5065)
at MergeMapSubscriber.project (build.js:34798)
at MergeMapSubscriber._tryNext (build.js:30450)
at MergeMapSubscriber._next (build.js:30440)
at MergeMapSubscriber.Subscriber.next (build.js:425)
at ScalarObservable._subscribe (build.js:846)
at ScalarObservable.Observable._trySubscribe (build.js:708)
at ScalarObservable.Observable.subscribe (build.js:696)
at MergeMapOperator.call (build.js:30415)
at _throwError (build.js:5036)
at Compiler.compileModuleAsync (build.js:5065)
at MergeMapSubscriber.project (build.js:34798)
at MergeMapSubscriber._tryNext (build.js:30450)
at MergeMapSubscriber._next (build.js:30440)
at MergeMapSubscriber.Subscriber.next (build.js:425)
at ScalarObservable._subscribe (build.js:846)
at ScalarObservable.Observable._trySubscribe (build.js:708)
at ScalarObservable.Observable.subscribe (build.js:696)
at MergeMapOperator.call (build.js:30415)
at resolvePromise (zone.js:769)
at resolvePromise (zone.js:740)
at zone.js:817
at ZoneDelegate.invokeTask (zone.js:424)
at Object.onInvokeTask (build.js:6048)
at ZoneDelegate.invokeTask (zone.js:423)
at Zone.runTask (zone.js:191)
at drainMicroTaskQueue (zone.js:584)
at ZoneTask.invoke (zone.js:490)
我也在使用一些可能导致问题的不同角度插件(但是我找不到任何对AoT问题的引用),即MyDatePicker
和MyDateRangePicker
。我还有几个js库,包括D3.js
和momement.js
所以我的问题是,是否有一些我做错了导致我的build.js文件抛出运行时编译器没有加载?
如果有人对此问题有任何见解,如果您需要任何特定的代码段,请与我联系,我将非常感谢,正如我所提到的,tsconfig-aot.json
和rollup-config.json
与角度基本相同。 IO
提前致谢
答案 0 :(得分:0)
非常感谢yurzui在评论中帮助我回答了我自己的问题。
帮助我找到加载运行时编译器的位置的方法是进入我生成的build.js并找到compileModuleAsync
的使用。我在loadChildren
方法中找到它,在删除它之后,项目在浏览器中成功运行。
但是,我不确定为什么loadChildren会导致编译器在汇总时加载。
希望这有帮助。