Angular-CLI v6: - no-aot构建选项等效

Nar*_*arm 8 angular-cli angular angular-cli-v6

我最近从与Angular-CLI v1.7.4合作的Angular v5.2.4升级到与Angular-CLI v6.0.8合作的Angular v6.0.3.

由于使用了动态组件,我的项目需要JIT编译器.因此,我的构建脚本用于:ng build --prod --no-aot.

我需要继续使用该--prod标志来保留树摇动,代码缩小和死代码消除的好处.但是,默认情况下--prod启用AOT.该--no-aot选项曾经是禁用AOT的解决方案,但仍然可以获得--prod构建的好处.

我已经尝试了以下选项,因为您可以看到没有构建成功(标准--prod构建除外).我没有从CLI获得任何信息,这对我们没有帮助:

在此输入图像描述

我已阅读官方Angular部署文档以及官方Angular-CLI构建Wiki,但未找到任何有助于解决此问题的信息.

有没有人知道替换--no-aot选项是什么或者是--prod在禁用AOT时进行构建的新方法?

R. *_*rds 15

要从命令行执行此操作,请使用以下选项以及该--prod选项.

--aot=false --build-optimizer=false
Run Code Online (Sandbox Code Playgroud)

完整的命令:

ng b --prod --aot=false --build-optimizer=false
Run Code Online (Sandbox Code Playgroud)

如果您希望每次都避免在命令行上执行此操作,则可以更改angular.json中的生产构建选项.

在文件中的以下路径中

projects/your-project/achitect/build/configurations/production
Run Code Online (Sandbox Code Playgroud)

将选项aotbuildOptimizer选项更改为false.然后,您只需从命令行运行ng b --prod,您将获得一个不包含aotbuild-optimizer选项的生成版本.

谢谢JB和Jon!