我如何在 webpack.config 文件中使用变量?
How do i use a variable in my webpack.config file?
我正在使用 webpack 2.2.1。
我想在命令行上定义一个变量,然后在我的构建配置中使用该变量。
所以给一个 webpack 命令行,看起来像(或任何它需要的):
webpack "--output-path=..." "--env.wibble=NOMF"
我怎样才能写这样的东西:
...
const config = {
entry: {
...
},
output: {
...
},
plugins: [
...
new CopyWebpackPlugin([{
from: '/somepath/' + env.wibble,
to: 'something.js'
}]),
...
],
};
module.exports = config;
如何在构建中定义和使用变量?
我故意不在这里使用 NODE_ENV(如果可以的话)。
--env
选项用于将定义的属性传递给 webpack 配置,但要使其工作,您需要导出一个 return 配置对象的函数,而不是对象本身.
您的配置为:
module.exports = function(env) {
const config = {
entry: {
// ...
},
output: {
// ...
},
plugins: [
new CopyWebpackPlugin([{
from: '/somepath/' + env.wibble,
to: 'something.js'
}]),
],
};
return config;
};
您可以通过使用箭头函数隐式 return 对象来缩短它:
module.exports = env => ({
entry: {
// ...
},
output: {
// ...
},
plugins: [
new CopyWebpackPlugin([{
from: '/somepath/' + env.wibble,
to: 'something.js'
}]),
],
});
我正在使用 webpack 2.2.1。
我想在命令行上定义一个变量,然后在我的构建配置中使用该变量。
所以给一个 webpack 命令行,看起来像(或任何它需要的):
webpack "--output-path=..." "--env.wibble=NOMF"
我怎样才能写这样的东西:
...
const config = {
entry: {
...
},
output: {
...
},
plugins: [
...
new CopyWebpackPlugin([{
from: '/somepath/' + env.wibble,
to: 'something.js'
}]),
...
],
};
module.exports = config;
如何在构建中定义和使用变量?
我故意不在这里使用 NODE_ENV(如果可以的话)。
--env
选项用于将定义的属性传递给 webpack 配置,但要使其工作,您需要导出一个 return 配置对象的函数,而不是对象本身.
您的配置为:
module.exports = function(env) {
const config = {
entry: {
// ...
},
output: {
// ...
},
plugins: [
new CopyWebpackPlugin([{
from: '/somepath/' + env.wibble,
to: 'something.js'
}]),
],
};
return config;
};
您可以通过使用箭头函数隐式 return 对象来缩短它:
module.exports = env => ({
entry: {
// ...
},
output: {
// ...
},
plugins: [
new CopyWebpackPlugin([{
from: '/somepath/' + env.wibble,
to: 'something.js'
}]),
],
});