用angular4.0进行先后端分离已经好几个月了,如今接近了尾声,pc端和移动端。但是却还存在着不少问题,最近这几天一直在研究懒加载问题,由于经过ng build --prod打包后主文件很大,有2.33Mb,这样性能很差,为了解决这个问题,网上查了不少,都没有找到能解决的,有多是本身懂的知识太少,有查到用wepack压缩的或者用gulp压缩的,都尝试了但都没能成功(不要嫌弃),也在相关angular群里问了别人,没有人给出好的方法,既然没有找到好的办法把代码压缩得更小,那就只能从别的地方下手,主文件之因此那么大是由于angular默认是一开始就加载了全部的模块,那就让他别加载全部的模块,因此想到了懒加载。在angular4.0的文档上对懒加载解释得很清楚,代码也一步步教你怎么写,连接以下https://www.angular.cn/guide/lazy-loading-ngmodules,有须要的朋友能够去看看,我尝试而且成功了,而后遇到了一个问题,公共组件该如何在模块配置,也是本身在网上找了解决的方法,公共组件即在多个页面都用到的组件,在页面用<app-xxx></app-xxx>引入。gulp
个人解决方法是建立一个公共的模块,将公共组件声明在公共模块里,而后那个页面须要用到公共组件就在那个页面引入公共模块,还有在app.module.ts模块里也能够引入公共模块。后端
个人公共模块建立命令:ng generate module communal
app
用到公共组件页面的模块前后端分离
app.module.ts模块angular4
通过部分页面配置懒加载之后个人主文件有2.33Mb变成了1.7Mb,但是远远不够呀?还有没有配置懒加载的文件我想全都配置了,可是遇到了一个我解决不了的问题,就是用到ng2-file-upload第三方库的页面配置懒加载后进入页面报错,报错以下:ide
这个问题我实在解决不了,问了很人和在网上查找了好久,都没有找到解决的办法,若是那个大神知道,而且看到了我这篇文章,请大佬告知解决方法,感激涕零!性能