Webpack 4: Загрузка модуля splitChunks через JS во время выполнения - PullRequest
0 голосов
/ 15 сентября 2018

Мой пакет webpack выводит 3 пакета.

  1. Точка входа.
  2. код node_modules, сгенерированный splitChunks
  3. Извлеченный файл CSS.

Это библиотека, предназначенная для использования другими разработчиками, поэтому я не контролирую HTML, из которого загружается точка входа. Пользователь собирается включить точку входа с <script>, тогда мой код приложения должен каким-то образом загрузить пакеты 2 && 3, которые имеют хэшированные имена.

Чтобы было ясно, я не хочу загружать модули с динамическим импортом (то есть, модули, которые вы устанавливаете в npm, или файлы, которые вы импортируете), я хочу загрузить выходной блок webpack, содержащий модули.

(На самом деле у меня есть 2 точки входа, поэтому существует пакет №2, но я упустил его для простоты.)

1 Ответ

0 голосов
/ 15 сентября 2018

Webpack v4 имеет последние обновления.Ранее, если мы делим код, вы можете увидеть в devTools браузера, initiator файла main.bundle.js в *(index)*, что означает index.html запросил main.bundle.js.После этого все скрипты загружаются из bootstrap_a877…. (скрипт) Это скрипт Webpack, который отвечает за асинхронную загрузку файлов.Этот сценарий добавляется в сборку автоматически при использовании функции динамического импорта Webpack.

Но в webpack v4 у нас есть runtimeChunk , который фактически становится инициатором всех пакетов.Вы можете увидеть это в ваших инструментах разработчика.Вам нужно включить runtimeChunk

optimization: {
    runtimeChunk: 'single',
}

Надеюсь, это будет полезно.

Мой ответ на другой пост о расщеплении кода

...