Я работаю над большим проектом и пытаюсь загрузить webpack 3 → 4. Это приложение имеет несколько точек входа (пачки), которые гарантированы на каждой странице. Наша цель - настроить webpack для создания наших активов, чтобы любые фрагменты, появляющиеся в любом из этих пакетов, не появлялись ни в одном другом пакете.
С webpack 3 мы используем CommonsChunkPlugin для этого. Вот простой пример:
new webpack.optimize.CommonsChunkPlugin({
name: 'a-global-bundle',
minChunks: Infinity,
}),
Теперь с webpack 4 и удалением CommonsChunkPlugin мне не ясно, как выполнить такую оптимизацию.
Я хотел бы предоставить webpack список точек входа, и любые куски, которые появляются в любом из них, не будут отображаться ни в одном другом пакете, но я не уверен, как это сделать. Я прочитал некоторую готовую документацию на splitChunks
, но мне не удалось собрать решение. Halp!
Я установил небольшое репо в качестве отправной точки для возиться с: https://github.com/lencioni/webpack-splitchunks-playground
Одно интересное направление, в котором я пытаюсь настроить: cacheGroups
с группой для каждой из этих точек входа и реализацию опции test
с функцией, которая выполняет эту проверку. Тем не менее, документация довольно редкая, поэтому я не совсем уверен, что правильный способ написать эту тестовую функцию будет или даже если это будет работать вообще.