В конфигурации webpack 3 я бы использовал приведенный ниже код для создания отдельного блока vendor.js
:
entry: {
client: ['./client.js'],
vendor: ['babel-polyfill', 'react', 'react-dom', 'redux'],
},
output: {
filename: '[name].[chunkhash].bundle.js',
path: '../dist',
chunkFilename: '[name].[chunkhash].bundle.js',
publicPath: '/',
},
plugins: [
new webpack.HashedModuleIdsPlugin(),
new webpack.optimize.CommonsChunkPlugin({
name: 'vendor',
}),
new webpack.optimize.CommonsChunkPlugin({
name: 'runtime',
}),
],
Со всеми изменениями я не уверен, как это сделать с Webpack 4. Я знаю, что CommonChunksPlugin
был удален, так что есть другой способ добиться этого. Я также прочитал этот учебник, но я все еще не уверен в том, чтобы извлечь фрагмент времени выполнения и правильно определить свойство output
.
РЕДАКТИРОВАТЬ: К сожалению, у меня возникли проблемы с наиболее популярным ответом здесь. Проверьте мой ответ.