Я закончил тем, что делал это, я не уверен, что это правильный способ разделения пакетов, но у меня это сработало.
Я добавил нужные пакеты в отдельном блоке в список в vender.
entry: {
vendor: [
'react',
'react-dom',
'lodash',
'moment',
'underscore',
'redux-thunk',
'react-bootstrap-table',
'react-bootstrap-daterangepicker',
'react-bootstrap-multiselect',
'react-bootstrap',
'react-translate-component',
'./other/fontPDF',
'./other/fontPDF.map',
'./other/exportCaseToPDF',
'pdfmake/build/pdfmake'
],
app: [ './index.js' ]
},
все пакеты попадают в чанк продавца, кроме того, что находится в другой папке
new webpack.optimize.CommonsChunkPlugin({
name: 'vendor',
minChunks(module, count) {
var context = module.context;
if (context && context.indexOf('public/newPortal/other') >= 0) {
return false;
}
return true;
},
filename: '[name].[hash].js'
}),
Я убедился, что в новый чанк помещаются только файлы из другой папки
new webpack.optimize.CommonsChunkPlugin({
name: 'other',
minChunks(module, count) {
var context = module.context;
return context && context.indexOf('public/newPortal/other') >= 0;
},
filename: '[name].[hash].js'
}),
Большой файл, который я исключил из uglify после его сбоя ...
new webpack.optimize.UglifyJsPlugin({
exclude: /^other(.*?)\.js$/i,
compress: { warnings: false },
sourceMap: true
}),