我正在使用Webpack 4,我想在config中使用env环境变量。我如何通过模式 - 开发和 - 生产获得这个变量? DefinePlugin不起作用,文档没有说什么。
答案 0 :(得分:1)
也许你可以这样做:
<强>的package.json 强>:
"scripts": {
"dev": "webpack-dev-server --config webpack.config.js --env.NODE_ENV=development",
"build": "webpack --config webpack.config.js --env.NODE_ENV=production"
},
<强> webpack.config.js 强>:
module.exports = (env) => {
return {
mode: env.NODE_ENV,
// ...rest of config based on environment
};
};
答案 1 :(得分:1)
--mode
参数自动在webpack配置中设置mode
。
mode
?将mode
传递给webpack-cli
的示例方式:
"scripts": {
"start:dev": "webpack --mode development --watch"
}
在webpack配置中,您可以使用第二个参数argv
来访问参数:
module.exports = (env, argv) => ({
...
watch: argv.mode !== 'production',
...
})