如果我使用延迟加载模块,我的 Angular 应用程序 main.bundle.js 文件大小会在构建时减小

Posted

技术标签:

【中文标题】如果我使用延迟加载模块,我的 Angular 应用程序 main.bundle.js 文件大小会在构建时减小【英文标题】:if im using lazy loading module my angular application main.bundle.js file size is decreased while build 【发布时间】:2019-01-27 09:01:15 【问题描述】:

如何在使用构建应用程序时减小我的vendor.bundle.jsmain.bundle.js 文件大小

ng build --aot false --prod

如果我使用延迟加载模块,我的 Angular 应用程序 main.bundle.js 文件大小在构建时会减小。

【问题讨论】:

你用的是什么版本? 【参考方案1】:

ng build 本身没有任何优化。如果您 ng build --help 您可以看到所有可以传递的标志,以进一步优化您的代码并减少输出大小。

试试 ng build -prod -aot -vc -cc -dop --buildOptimizer 看看你的数字是多少。这将启用生产模式,使用 AOT,为第三方库使用供应商块,将所有通用代码提取到一个通用块中,确保输出路径是干净的,最后使用 @angular-devkit/build-optimizer 进行进一步优化.

如果仍然很大,请在您的应用程序中运行您正在使用的第三方库。 (1) 你是在导入整个 RxJS 库吗? (2) 所有本地化的时刻?等等。

【讨论】:

以上是关于如果我使用延迟加载模块,我的 Angular 应用程序 main.bundle.js 文件大小会在构建时减小的主要内容,如果未能解决你的问题,请参考以下文章

Angular模块 - 使用第三方软件包/模块的共享模块

Angular:只有在授权的情况下才从服务器加载延迟加载的模块(使用 JWT)

延迟加载模块中的 Angular single-spa 延迟加载路由调用未定义的 webpack 错误

Angular Universal 12(服务器端)在延迟加载时不加载模块

Angular2延迟加载模块错误'找不到模块'

Angular2 无法使用延迟模块加载的自定义重用策略