记一次NGALAIN启动优化

原文地址Angular4首页加载慢优化之路

第一步:多模块懒加载

查找官网

字符串形式LoadChildren已弃用(请参阅参考资料DeprecatedLoadChildren)。LoadChildrenCallback应改用函数形式()。

使用 LoadChildrenCallback应改用函数形式()

loadChildren: () => import('./lazy-route/lazy.module').then(mod => mod.LazyModule),

加入后报错 

仅当 "--module" 标志为 "commonjs" 或 "esNext" 时,才支持动态导入。ts(1323)

修改 tsconfig.json

"module": "esnext"

还是报错

npm查看版本 6.4.1 貌似不行,需要升级的8

升级过程中操作不得当,完全崩溃,重装系统, 重装环境,修改OK

修改测试后发现main.js还是有2M左右,看官网的demo也是2M左右

第二步:vendor.js

通过增加编译参数:--prod –aot

编译后发现,竟然报了一堆错误。不过不要惊慌,那是优化编译时对ts语法检查比较严谨,我们代码中很多地方写的不够严谨,只能硬着头皮一行行修改了,此外别无它法。

修改NPM脚本

发现编译脚本 自带--prod 增加--aot 之后,再编译,发现还是2M左右

想到一个方法,使用OSS对象存储

在NPM脚本后面加上 --deploy-url http://cdn.xxx.xxx/xx/xx

直接接入OSS网址,

服务器上的wwwroot只放assets文件夹和LOGO文件和index.html,其它文件放在OSS上

运行起来 main.js只有400K,具体怎么回事没试,但是速度已经到了1S内了

第三步:服务端开启gizp压缩

百度

本人IIS11,发现 压缩默认开启

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章