新聞中心
答案: 隨著Webpack 4的發(fā)布,許多開發(fā)者已經(jīng)開始考慮將他們的項(xiàng)目遷移到最新版本。在進(jìn)行這一步之前,你需要了解在從Webpack 3升級到Webpack 4時可能會面臨哪些問題。

對于那些沒有使用任何插件或自定義配置文件來擴(kuò)展Webpack功能的用戶而言,升級應(yīng)該是相當(dāng)平滑和簡單的。但是如果你已經(jīng)在當(dāng)前項(xiàng)目中使用了很多定制化配置以及各種常見插件,則需要花費(fèi)更長時間來完成整個過程。
下面我們將介紹幾個常見問題:
1. Webpack CLI 命令行工具更新
Webpack CLI 工具現(xiàn)在支持 webpack-dev-server 和 webpack-hot-middleware 這兩個選項(xiàng)。所以如果你正在使用這些選項(xiàng),請確保安裝了最新版本的CLI,并檢查所有相關(guān)命令是否正確執(zhí)行。
2. Mode 模式變化
mode屬性現(xiàn)在是必填項(xiàng),默認(rèn)值為production。在development模式下會啟用NamedChunksPlugin和NamedModulesPlugin插件(即使沒有明確添加它們)。
3. CommonsChunkPlugin被廢棄
CommonsChunkPlugin 被移除并替換成 optimization.splitChunks 和 optimization.runtimeChunk 選項(xiàng)。這兩個新選項(xiàng)提供了更好的性能和靈活性,但是需要在升級過程中進(jìn)行一些調(diào)整。
4. UglifyJSPlugin 被移除
UglifyJSPlugin 已經(jīng)被廢棄,并由內(nèi)置的 TerserWebpackPlugin 替代。TerserWebpackPlugin 提供了與之前版本相同的功能,同時還支持 ES6+。
5. Module.rules 變化
Module.rules 現(xiàn)在是必填項(xiàng),并且它不再接受字符串類型?,F(xiàn)在只有對象數(shù)組才可以傳遞給 module.rules 。如果你使用一個單獨(dú)的規(guī)則,請將其包裝到一個數(shù)組中以確保向后兼容性。
6. MiniCssExtractPlugin 插件更新
MiniCssExtractPlugin 插件已經(jīng)更新為 v0.4.x ,并且現(xiàn)在要求 webpack 版本大于或等于 4.x 。插件現(xiàn)在默認(rèn)啟用 sourceMap 屬性(除非顯式地設(shè)置為 false)。
總結(jié):標(biāo)題名稱:解析webpack3升級到webpack4版本遇到的問題(總結(jié))
文章網(wǎng)址:http://www.dlmjj.cn/article/cdodgdd.html


咨詢
建站咨詢
