【问题标题】:How to build Angular 4.3.6 for production?如何为生产构建 Angular 4.3.6?
【发布时间】:2018-03-01 05:41:53
【问题描述】:

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

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

如果是,是通过 angular-cli 默认配置 Tree Shaking 和 AOT 和 Uglfy 还是我应该手动配置这些?

在捆绑使用 angular-cli 开发的 Angular 4 应用程序方面是否有任何其他最佳实践或建议?

我使用 @angular/cli 版本 1.3.1。

【问题讨论】:

  • 不使用 ng build --prod --aot 以获得最佳的生产环境。
  • --prod 将 uglify build --aot 将做 aot :-)
  • 通过 angular-cli nope

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


【解决方案1】:

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

我可以简短地说一下,是的

如果是,是通过 Angular-cli 默认配置 Tree Shaking 和 AOT 和 Uglfy 还是我应该手动配置它?

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

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

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

【讨论】:

    【解决方案2】:

    你很亲密。根据angular-cli documentation,这些是用于 --prod 标志的设置:

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

    它也这样做:

    • 如果在 .angular-cli.json 中配置,则添加 service worker。
    • 将模块中的 process.env.NODE_ENV 替换为生产值。
    • 在代码上运行 UglifyJS。

    因此,您只需使用ng build --prod,剩下的就交给 angular-cli 处理。

    【讨论】:

      猜你喜欢
      • 2021-03-14
      • 2018-03-16
      • 2020-05-07
      • 2021-08-10
      • 1970-01-01
      • 2019-11-30
      • 2017-02-25
      • 2021-05-11
      • 1970-01-01
      相关资源
      最近更新 更多