我需要能够在运行时使用生产构建(启用aot)动态创建模块和组件(使用不同的模板)。我知道这对于使用 JIT 编译器的开发版本是可能的。但我不希望这个用于我的生产版本
有没有办法延迟加载 JIT 编译器,以便它仅用于在生产构建中创建那些动态模块和组件?
我需要能够在运行时使用生产构建(启用aot)动态创建模块和组件(使用不同的模板)。我知道这对于使用 JIT 编译器的开发版本是可能的。但我不希望这个用于我的生产版本
有没有办法延迟加载 JIT 编译器,以便它仅用于在生产构建中创建那些动态模块和组件?
是的,这是可能的,但我会称之为 hack。您将失去 aot 构建的所有优势(例如没有编译器的较小的构建输出、提前生成的模板等等)。所以没有理由,仍然想使用aot。
如果您真的想使用动态创建的模块和组件,您将需要创建一个没有 aot 的 prod 构建 - 但仍然使用 uglifying 和 prod 环境。
ng build --prod --aot=false
(假设您有 angular-cli,请参阅文档)