自从升级到 Angular 8 以来,我们的项目中默认启用了差分加载,并导致 ES5 和 ES2015 的填充。虽然我非常欢迎这种变化,但有没有办法在开发模式下强制使用 ES2015 模式?我试图从初始和增量构建时间中减少任何一秒,分别超过 40/8 秒。
ES5 默认禁用,用于使用 ng serve
进行开发。
在 Angular CLI 版本 8 及更高版本中,默认情况下为 ng build 命令启用差分加载。但是,ng serve、ng test 和 ng e2e 命令会生成单个 ES2015 版本,该版本无法在不支持模块的旧浏览器(如 IE 11(中运行。
角度文档
我相信它也因ng build --watch
而被禁用,但如果这是有意的行为,我找不到任何参考。
如果差异加载导致意外问题,或者您需要专门针对旧版浏览器支持以 ES5 为目标,则可以显式禁用差异加载。
要显式禁用差分负载:
通过删除死浏览器或 IE 浏览器前面的 not 关键字,在浏览器列表配置文件中启用它们。将编译器选项中的目标设置为 es5。
https://angular.io/guide/deployment#configuring-differential-loading