У меня есть приложение с несколькими точками входа и большим количеством перекрестных опылений между точками входа, поэтому я работаю над определенным таргетингом на основных нарушителей со следующей оптимизацией:
optimization: {
minimize: true,
splitChunks: {
chunks: 'all',
maxInitialRequests: Infinity,
minSize: 0,
cacheGroups: {
moment: {
test: /[\\/]node_modules[\\/](moment|moment-timezone)[\\/]/,
name: 'moment-bundle',
priority: -5,
reuseExistingChunk: true,
enforce: true
},
ourUXComponentLibrary: {
test: /[\\/]node_modules[\\/]ourUXComponentLibrary[\\/]/,
name: 'ourUXComponentLibrary',
priority: -10
},
vendors: {
test: /[\\/]node_modules[\\/]/,
priority: -20,
enforce: true
}
}
}
Ив целом это работает, но с оговоркой на данный момент. И основное приложение, и ourUXComponentLibrary
используют момент (поэтому я и разделяю их), но вместо того, чтобы объединять момент и момент-время один раз, он дублирует их следующим образом:
(rough idea from webpack-bundle-analyzer)
moment-bundle
-node_modules
--moment
--moment-timezone
--ourUXComponentLibrary
---node_modules
----moment
----moment-timezone
--another-node-module-using-moment
---moment
У меня естьподтвердил, что пакет ourUXComponentLibrary
не объединяет момент или момент-часовой пояс, и он и основное приложение используют одну и ту же версию момента и момент-времени. Что мне нужно сделать, чтобы остановить дублирование?