Angular5:compileModuleAndAllComponentsSync 不使用 AoT

Angular5:compileModuleAndAllComponentsSync not working with AoT

我正在开发一个项目,其中我需要使用 --prod 标志来构建 angular 代码。
在我们的一个模块中,有一个组件正在 运行 时创建。 使用开发环境构建时,该项目工作正常。 但是,当使用 --prod 标志时,项目会成功构建,但会在方法 'compileModuleAndAllComponentsSync()' 处抛出 运行 时间异常。 我为此进行了很多搜索,但没有找到任何有希望的解决方案。有人可以帮我吗?

异常详细信息:

main.0c80be8a6ff7c0136620.bundle.js:1 ERROR Error: Runtime compiler is not loaded
at fe (main.0c80be8a6ff7c0136620.bundle.js:1)
at e.compileModuleAndAllComponentsSync (main.0c80be8a6ff7c0136620.bundle.js:1)
at e.addComponent (main.0c80be8a6ff7c0136620.bundle.js:1)
at e.onSubmit (main.0c80be8a6ff7c0136620.bundle.js:1)
at Object.handleEvent (main.0c80be8a6ff7c0136620.bundle.js:1)
at Object.handleEvent (main.0c80be8a6ff7c0136620.bundle.js:1)
at Object.handleEvent (main.0c80be8a6ff7c0136620.bundle.js:1)
at cn (main.0c80be8a6ff7c0136620.bundle.js:1)
at main.0c80be8a6ff7c0136620.bundle.js:1
at HTMLButtonElement.<anonymous> (main.0c80be8a6ff7c0136620.bundle.js:1)@ main.0c80be8a6ff7c0136620.bundle.js:1

JIT 编译器通常在 AoT 模式下不可用,这是从 Angular's integration example 中获取的解决方法。

import {Compiler, COMPILER_OPTIONS, CompilerFactory, NgModule} from '@angular/core';
import {JitCompilerFactory} from '@angular/platform-browser-dynamic';

@NgModule({
  providers: [
    {provide: COMPILER_OPTIONS, useValue: {}, multi: true},
    {provide: CompilerFactory, useClass: JitCompilerFactory, deps: [COMPILER_OPTIONS]},
    {provide: Compiler, useFactory: createCompiler, deps: [CompilerFactory]}
  ]
})

还有一个 open feature request 在 AoT 模式下包含 jit 编译器。