Дублирующие модули Webpack в кеш-группе - PullRequest
0 голосов
/ 29 октября 2019

У меня есть приложение с несколькими точками входа и большим количеством перекрестных опылений между точками входа, поэтому я работаю над определенным таргетингом на основных нарушителей со следующей оптимизацией:

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 не объединяет момент или момент-часовой пояс, и он и основное приложение используют одну и ту же версию момента и момент-времени. Что мне нужно сделать, чтобы остановить дублирование?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...