webpack性能優化
優化可以從兩個方面考慮,一個是優化開發體驗,一個是優化輸出質量。
優化開發體驗
縮小文件搜索范圍。涉及到webpack如何處理導入文件,不再贅述,不會的可以自行搜索。由於loader對文件轉換操作很耗時,應該盡量減少loader處理的文件,可以使用include命中需要處理的文件,縮小命中范圍。
使用DllPlugin,提升構建速度
使用happyPack開啟多線程
使用UglifyJs壓縮代碼(只支持es5),uglifyes支持es6,兩個插件不能同時開啟。使用ParalellUgifyPlugin開啟多個子進程壓縮,既支持UglifyJs又支持uglifyes
使用自動刷新:監聽到代碼改變后,自動編譯構建可運行代碼並刷新頁面
開啟模塊熱替換:在不刷新網頁的同時實現實時預覽
優化輸出質量減少首屏加載時間
區分環境
壓縮代碼
CDN加速
使用Tree shaking
提取公共代碼
按需加載
提升流暢度,即代碼性能:
使用PrePack優化代碼運行時的效率
開啟Scope Hoisting,讓webpack打包出來的代碼更小、運行更快