Angular-CLI v6: --no-aot 构建选项等效
Angular-CLI v6: --no-aot build option equivalent
我最近从与 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
标志来保留 tree shaking、代码缩小和死代码消除的好处。但是,默认情况下 --prod
启用 AOT。 --no-aot
选项曾经是禁用 AOT 的解决方案,但仍然可以获得 --prod
构建的好处。
我尝试了以下选项,如您所见,没有构建成功(标准 --prod
构建除外)。我也没有从 CLI 返回任何信息,这不是很有帮助:
我已通读 Official Angular Deployment Docs as well as the Official Angular-CLI build Wiki,但未找到任何有助于解决此问题的信息。
有谁知道 --no-aot
选项的替代品是什么,或者在禁用 AOT 时进行 --prod
构建的新方法?
要从命令行执行此操作,请使用以下选项以及 --prod
选项。
--aot=false --build-optimizer=false
完整命令:
ng b --prod --aot=false --build-optimizer=false
如果您不想每次都在命令行上执行此操作,您可以在 angular.json.
中更改生产构建选项
文件中的以下路径
projects/your-project/achitect/build/configurations/production
将 aot
和 buildOptimizer
选项更改为 false
。然后,您可以从命令行简单地 运行 ng b --prod
,您将获得不包含 aot
和 build-optimizer
选项的生产版本。
--prod
构建选项已弃用。下面在更新的命令中。
ng b -c production --aot=false --build-optimizer=false
你可以试试这个:
ng build --prod --aot=false --build-optimizer=false
在 .npmrc 文件中
legacy-peer-deps = true
命令提示符
npm install
或者
npm config set legacy-peer-deps true
npm install
我最近从与 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
标志来保留 tree shaking、代码缩小和死代码消除的好处。但是,默认情况下 --prod
启用 AOT。 --no-aot
选项曾经是禁用 AOT 的解决方案,但仍然可以获得 --prod
构建的好处。
我尝试了以下选项,如您所见,没有构建成功(标准 --prod
构建除外)。我也没有从 CLI 返回任何信息,这不是很有帮助:
我已通读 Official Angular Deployment Docs as well as the Official Angular-CLI build Wiki,但未找到任何有助于解决此问题的信息。
有谁知道 --no-aot
选项的替代品是什么,或者在禁用 AOT 时进行 --prod
构建的新方法?
要从命令行执行此操作,请使用以下选项以及 --prod
选项。
--aot=false --build-optimizer=false
完整命令:
ng b --prod --aot=false --build-optimizer=false
如果您不想每次都在命令行上执行此操作,您可以在 angular.json.
中更改生产构建选项文件中的以下路径
projects/your-project/achitect/build/configurations/production
将 aot
和 buildOptimizer
选项更改为 false
。然后,您可以从命令行简单地 运行 ng b --prod
,您将获得不包含 aot
和 build-optimizer
选项的生产版本。
--prod
构建选项已弃用。下面在更新的命令中。
ng b -c production --aot=false --build-optimizer=false
你可以试试这个:
ng build --prod --aot=false --build-optimizer=false
在 .npmrc 文件中
legacy-peer-deps = true
命令提示符
npm install
或者
npm config set legacy-peer-deps true
npm install