Я хочу использовать WebPack для создания своего приложения JavaScript. Приложение предполагается развернуть на нескольких площадках, в нескольких разных модификациях. Поэтому я настроил конфиг на использование нескольких точек входа, по одной на каждый сайт:
entry: {
s1: "s1",
s2: "s2",
s3: "s3"
},
Приложение также использует несколько зависимостей, которые загружаются через модули AMD (раньше я использовал RequireJS):
c1
c2
...
Допустим, для s1
требуются и c1
, и c2
, тогда как для s2
нужен только c1
. Сборка работает нормально, и она создает s1
, s2
и s3
в качестве точек входа, а также несколько чанков, содержащих различные комбинации компонентов, как того требуют сайты:
/* s1 */
define(['c1', 'c2'], function(c1, c2) { ... }
У меня есть вопрос: что мне нужно указать в конфигурации, чтобы каждый пакет сайта был собран как один автономный файл? Я ценю способность WebPack разбивать приложение на куски, но сейчас мне нужно, чтобы каждая сборка была одним JS-файлом (по разным причинам).
Я могу легко добиться этого, настроив только одну точку входа (например, entry: "s1"
), используя следующее:
webpack.optimize.LimitChunkCountPlugin({maxChunks: 1})
Однако для нескольких точек входа эта конфигурация создает один дополнительный фрагмент поверх всех точек входа. Как я могу убедиться, что каждая созданная точка входа (например, s1.bundle.js
, s2.bundle.js
,...) содержит весь JavaScript внутри этого одного файла и не требует загрузки каких-либо фрагментов по запросу?