1 entry 配置增加多个
entry: {
home: paths.appSrc+ '/routes/home/index.js',
about: paths.appSrc+ '/routes/about/index.js'
}
2 HtmlWebpackPlugin 根据入口数量初始化多个
plugins: [
new HtmlWebpackPlugin({
inject: true,
template: paths.appHtml,
chunks: [ "home" ],
filename: 'index.html',
title: '首页'
}),
new HtmlWebpackPlugin({
inject: true,
template: paths.appHtml,
chunks: [ "about" ],
filename: 'about.html',
title: '关于我们'
}),
]
3 output 配置更改,确保每个入口生成一个独立文件
output: {
...
filename: isEnvProduction
? 'static/js/[name].[contenthash:8].js'
: isEnvDevelopment && 'static/js/[name].bundle.js',
...
}
4 如果要多个入口复用一个 runtime 更改 runtimeChunk
runtimeChunk: {
name: entrypoint => `runtime-${entrypoint.name}`,
},
=>
runtimeChunk: 'single'