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 编译器。
我正在开发一个项目,其中我需要使用 --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 编译器。