配置类型 | Configuration Types
配置类型
除了导出单个配置对象之外,还有其他一些方法可以满足其他需求。
导出函数
- 选项映射(
argv
)作为第二个参数。这描述了传递给webpack的选项,以及诸如output-filename
和的键optimize-minimize
。
-module.exports = {
+module.exports = function(env, argv) {
+ return {
+ devtool: env.production ? 'source-maps' : 'eval',
plugins: [
new webpack.optimize.UglifyJsPlugin{
+ compress: argv['optimize-minimize'] // only if -p or --optimize-minimize were passed
})
]
+ };
};
导出一个Promise
module.exports = () => {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve{
entry: './app.js',
/* ... */
})
}, 5000)
})
}
导出多个配置
module.exports = [{
output: {
filename: './dist-amd.js',
libraryTarget: 'amd'
},
entry: './app.js',
}, {
output: {
filename: './dist-commonjs.js',
libraryTarget: 'commonjs'
},
entry: './app.js',
}]