模式(mode)
提供 mode 配置選項,告知 webpack 使用相應模式的內置優化。
用法
只在配置中提供 mode 選項:
module.exports = { mode: 'production'}; 或者從 CLI 參數中傳遞:
webpack --mode=production
支持以下字符串值:
1.development
會將 process.env.NODE_ENV 的值設為 development。啟用 NamedChunksPlugin 和 NamedModulesPlugin。
// webpack.development.config.jsmodule.exports = {+ mode: 'development'- plugins: [- new webpack.NamedModulesPlugin(),- new webpack.DefinePlugin({ "process.env.NODE_ENV": JSON.stringify("development") }),- ]} 2.production
會將 process.env.NODE_ENV 的值設為 production。啟用 FlagDependencyUsagePlugin, FlagIncludedChunksPlugin, ModuleConcatenationPlugin, NoEmitOnErrorsPlugin, OccurrenceOrderPlugin, SideEffectsFlagPlugin 和 UglifyJsPlugin.
// webpack.production.config.jsmodule.exports = {+ mode: 'production',- plugins: [- new UglifyJsPlugin(/* ... */),- new webpack.DefinePlugin({ "process.env.NODE_ENV": JSON.stringify("production") }),- new webpack.optimize.ModuleConcatenationPlugin(),- new webpack.NoEmitOnErrorsPlugin()- ]} production模式下會啟用UglifyJsPlugin插件(移除未使用的內容和文件壓縮),分別用production和development打包,編譯的區別:
1.development打包后,一些沒有依賴的方法 變量 文件會保留,production則會移除。
2.production打包后,代碼會進行壓縮,比development的文件小。
到此這篇關于webpack中的模式(mode)使用詳解的文章就介紹到這了,更多相關webpack 模式內容請搜素錯新站長站以前的文章或下面相關文章,希望大家以后多多支持錯新站長站!
新聞熱點
疑難解答
圖片精選