如何为生产构建Angular 4.3.6?

时间:2017-09-20 08:46:12

标签: angular webpack angular-cli uglifyjs tree-shaking

我对使用带有Webpack的angular-cli创建的Angular 4应用程序有一些疑问。

ng build --prod --aot是创建最终捆绑以部署到生产环境的最佳命令吗?

如果是,Tree抖动,AOT和Uglfy默认通过angular-cli配置,或者我应该手动配置?

在捆绑使用angular-cli开发的Angular 4应用程序时是否还有其他最佳做法或建议?

我使用@ angular / cli版本1.3.1。

2 个答案:

答案 0 :(得分:2)

你非常接近。根据{{​​3}},这些是用于--prod标志的设置:

--aot true
--environment prod
--output-hashing all
--sourcemaps false
--extract-css true
--named-chunks   false

它也是这样做的:

  • 如果在.angular-cli.json中配置,则添加服务工作者。
  • 使用生产值替换模块中的process.env.NODE_ENV。
  • 在代码上运行UglifyJS。

因此,您需要使用ng build --prod,而angular-cli将处理剩下的工作。

答案 1 :(得分:1)

  

ng build --prod - 是创建最终捆绑以在生产阶段部署的最佳命令吗?

我可以简短地说,是的

  

如果是,树摇动,AOT和Uglfy默认配置为Angular-cli,或者我应该手动配置它?

您无需手动配置。它已经存在了。

  

是否还有其他最好的方法或建议来捆绑通过Angular-cli开发的Angular 4应用程序......?

您可以使用实验选项build-optimizer=true来进一步减少应用程序的大小。请注意,这是实验性的。