在角度2上,当我从一个大型库中导入一个模块时,构建会发生什么?

时间:2017-03-15 22:28:10

标签: angular

当使用角度2时,我需要来自另一个库的特定模块,假设我需要仅来自角度材质2的

如果我使用导入 MdTabsModule 而非 MaterialModule

我知道当我服务时,我得到的文件超过1Mb。

最后,构建只会使用模块作为选项卡,还是会导入所有库并使构建变得庞大?

创建仅使用已使用模块而不是整个外部库的构建的最佳方法是什么?以便缩小尺寸?

2 个答案:

答案 0 :(得分:1)

这取决于编译过程简单构建将继承所有模块,如果使用AOT进行编译,它将不会使用整个模块进行构建,只需要导入和使用的组件,如果汇总则会删除所有组件和编写但从未使用的函数等。

对于AOT和汇总在这里阅读 https://angular.io/docs/ts/latest/cookbook/aot-compiler.html

如果你使用angular/cli它已经内置了这些功能,angular2-webpack-starter它们还有更多功能,你可以阅读上面的链接。您的开发服务构建规模将很大,但最终的生产构建将减少尺寸。

答案 1 :(得分:1)

完全取决于你如何构建它。 Angular-cli会发生树木震动,并且会在生产中使用更少的代码,有关它的更多信息。

Bundling