用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
這個問題我實在解決不了,問了很人和在網上查找了好久,都沒有找到解決的辦法,若是那個大神知道,而且看到了我這篇文章,請大佬告知解決方法,感激涕零!性能