Разделение кода Webpack добавляет модуль дважды

Я использую динамическое разделение кода веб-пакетов, которое пока работает достаточно хорошо. Но у меня есть один модуль (mC) с большой зависимостью, которая требуется от двух других модулей (mA и mB). При разделении кода создаются два пакета с одинаковым содержимым largeLib. И для каждого из модулей загружается по одному из пакетов. Я ожидаю, что только один модуль создается и используется как mA, так и mB.

 mA    mB
   \  / 
    \/ 
    mC
    |
  largeLib

person Andreas Köberle    schedule 09.02.2018    source источник


Ответы (1)


Добавление определенного имени к импорту решает проблему для меня:

 import(/* webpackChunkName: "handsOnTable" */ 'react-handsontable'),
person Andreas Köberle    schedule 09.02.2018
comment
Это действительно быстрый и грязный способ сделать это. Это решает только дублирование одного большого компонента. Если вы хотите решить эту проблему для всех компонентов, вам придется заглянуть в CommonsChunkPlugin. Но это намного сложнее правильно настроить. - person Erwin van der Koogh; 18.02.2018
comment
Также в webpack4 будет удален плагин CommonsChunkPlugin. - person Andreas Köberle; 18.02.2018
comment
Да, причина, по которой я буду обновлять на 2-й день, он выпущен :D - person Erwin van der Koogh; 19.02.2018