剛開始用webpack,談一談解決webpack打包慢的問題的方法
技巧1
webpack在打包的時候第一次總是會做很長的準備工作,包括加載插件之類的。在剛接觸webpack的時候總是webpack一下-測一下-改一下-再webpack一下,這種方式最后讓很多人崩潰了覺得webpack一點都不好用。其實這是錯誤的使用方式。
正確的方式應直接執行webpack --watch 這樣webpack會自動編譯,第一回的時候確實很慢,但之后的自動編譯就要快了好多,打包時間相差幾倍。
技巧2
webpack配合的React,jQuery一些共有的庫去使用,雖然沒寫幾行代碼卻發現我靠打個文件居然好幾M了。能不能不讓這些共有庫打入我們的文件呢?
externals: { 'antd':true, 'react': 'React', 'react-dom': 'ReactDOM' }
在webpack配置文件的根上加上這些內容。告訴webpack在require(“react”)的時候不要去加載模塊,直接去讀(這里還不是很明白,有的說“:”后面是window.React,寫了后面可以直接使用無需require,待確定后再補充,一般寫true就可以了),當然這種方式要在html入口手動引入js文件:
<script src="node_modules/react/dist/react-with-addons.js"></script><script src="node_modules/react-dom/dist/react-dom.min.js"></script><script src="node_modules/antd/dist/antd.min.js"></script>
在項目中正常使用require(“react”)試試,不會被打進去了,文件變為了幾k,突然感覺webpack這東西還是能用的。
技巧3
大部分情況下通過技巧2已經可以搞定大部分問題了,但是在用MaterialUI的時候,點擊事件總是報一個錯誤,大概意思是重復的引入了react什么的。如果出現這個問題,那么請使用技巧3。將那些共有的模塊打進另外一個文件中,然后使用CommonsChunkPlugin插件,在webpack 主站蜘蛛池模板: 汉沽区| 通榆县| 康乐县| 黔西县| 灵川县| 长宁区| 余姚市| 巴塘县| 瑞金市| 烟台市| 鄂州市| 乐业县| 乐昌市| 宜都市| 宁津县| 赣州市| 化隆| 芒康县| 菏泽市| 育儿| 滨州市| 长阳| 通海县| 区。| 枣强县| 青岛市| 双桥区| 永善县| 广东省| 清丰县| 增城市| 成安县| 四子王旗| 南靖县| 沁源县| 都兰县| 朝阳市| 临邑县| 黄浦区| 沽源县| 武邑县|