Angular 2-Angular Cli生成后的文件大小

Angular 2-Angular Cli生成后的文件大小,angular,angular2-aot,Angular,Angular2 Aot,角度版本:2.4.10 Angular Cli版本:1.0.0-rc.4 使用的Build命令:ng Build--aot(no--prod,这样我就可以使用源地图资源管理器) 我不确定我是否理解构建过程是如何组织模块的,我肯定在某个地方犯了错误。 我正在调试这个庞大的已建项目,看看是否有任何改进。 我有一个通用模块,可以在整个应用程序中导入和导出常用模块。在所有子模块中导入公共模块。如果我只在应用程序级别导入它,那么应用程序的其余部分似乎找不到导入的模块 我安装了源地图浏览器来检查包和块。 所

角度版本:2.4.10 Angular Cli版本:1.0.0-rc.4 使用的Build命令:ng Build--aot(no--prod,这样我就可以使用源地图资源管理器)

我不确定我是否理解构建过程是如何组织模块的,我肯定在某个地方犯了错误。 我正在调试这个庞大的已建项目,看看是否有任何改进。 我有一个通用模块,可以在整个应用程序中导入和导出常用模块。在所有子模块中导入公共模块。如果我只在应用程序级别导入它,那么应用程序的其余部分似乎找不到导入的模块

我安装了源地图浏览器来检查包和块。 所有延迟加载的模块似乎都包含@angular包和一些UI组件模块。它们不应该只被放置在应用程序级别的某个地方一次,然后再被引用吗?这为每个模块增加了1MB

该应用程序基本上是一个巨大的表单,因此我创建了一个模块,其中包含用于在需要时重用的字段集。生成后的fieldsets模块是8 mb,而如果我右键单击并选择未生成文件夹上的属性,则只有1.44 mb

构建生成的ngFactory似乎比实际文件大小大得多。为什么呢

一个登录页组件将用户重定向到应用程序的不同部分,只有十几个字段,一些文本在磁盘上的大小为18 kb,构建源地图资源管理器后,我发现landing-page.component.ngfactory.ts的大小为600 kb

运行--prod-with-side-ng-build--aot确实有助于删除映射,并且捆绑包更小,但我仍然发现总体大小太大

除了ng build--aot--prod之外,我还能做些什么来减小大小吗


请告诉我是否应该添加一些特定的代码或信息。

您可以参考我关于文件大小增加的回答,这是因为webpack在生成的文件中添加了其模块代码。要减小导入的大小,可以检查导入并删除不需要的任何内容(在这种情况下AOT会有所帮助)。要采取的另一个步骤是运行构建后步骤来gzip您的构建包,并配置您的服务器为支持接受编码的浏览器提供这些服务:gzip。在我的例子中,这将静态文件请求流量减少了约75%。