我想生成我的条目文件的多个版本。即webpack.config.js
包含:
entry: {
main: path.resolve('./src/main.js'),
main2: path.resolve('./src/main.js'),
},
在中main.js
,我可以做:
if (entryName === 'main') {
...
} else if (entryName === 'main2') {
...
}
使用Webpack可以吗?
可以通过使用不同的运行脚本来设置环境变量(使用cross-env
),该环境变量在编译时使用DefinePlugin进行插值。
运行脚本:
{
"scripts": {
"build:main": "cross-env ENTRY_NAME=main webpack --config webpack.config.js",
"build:main2": "cross-env ENTRY_NAME=main2 webpack --config webpack.config.js",
"build": "npm run build:main && npm run build:main2"
}
}
Webpack:
{
entry: {
main: path.resolve('./src/main.js')
},
plugins: [
new DefinePlugin({
ENTRY_NAME: JSON.stringify(process.env.ENTRY_NAME)
})
]
}
应用:
if (ENTRY_NAME === 'main') {
//...
} else if (ENTRY_NAME === 'main2') {
//...
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句