改善大角度应用的构建时间

时间:2018-04-19 03:43:04

标签: angular performance

我有一个相当大的Angular 2+应用程序,需要大约10分钟才能完全构建。

我想重构我的代码库,以减少构建时间。

我有一些想法,但我的3个主要想法是:

  • 使用depcheck之类的工具来删除未使用的依赖项
  • 将所有npm包更新为最新版本
  • 可能优化gruntfile?

这些是第一次尝试的好事吗?我应该探索哪些其他选项以进一步缩短构建时间?

谢谢

2 个答案:

答案 0 :(得分:5)

以下命令对缩短构建时间非常有用:

ng build --sourcemap=false

仅在调试时需要源映射,因此如果您不希望这样,您肯定可以使用该命令。

另一个是

 --build-optimizer=false

除此之外,使用AOT - 提前编译器。你可以learn more about AOT here

根据您的问题,第二个选项可能对构建时间没有太大影响。我不知道depcheck和优化gruntfile。

答案 1 :(得分:1)

如果您计划部署,可以使用--prod标志:

--prod启用以下标志:

Flag                  --prod
--aot                 true
--environment         prod
--output-hashing      all
--sourcemaps          false
--extract-css         true
--named-chunks        false
--build-optimizer     true with AOT and Angular 5

https://github.com/angular/angular-cli/wiki/build

  

Ahead-of-Time(AOT)编译:预编译Angular组件模板。   
生产模式:部署生产环境,启用生产模式。   
捆绑:将您的许多应用程序和库文件连接成几个捆绑包。   
缩小:删除多余的空格,注释和可选标记。   
Uglification:重写代码以使用简短,神秘的变量和函数名称。   
死代码消除:删除未引用的模块和许多未使用的代码。

     

其余的副本部署步骤与之前相同。

     

您可以通过添加构建优化程序标志来进一步减少包大小。

     

ng build --prod --build-optimizer

https://angular.io/guide/deployment