Если у вас есть запись main.js
с этим видом содержания:имя ломоть на асинхронной загрузке модуля
require.ensure('a', function(module){
//
}, 'chunk1');
require.ensure('b', function(module){
//
}, 'chunk1');
require.ensure('c', function(module){
//
}, 'chunk2');
require.ensure('c', function(module){
//
}, 'chunk2');
Webpack будет выводить 3 файла: main.js
, chunk1.js
и chunk2.js
где блок 1 состоит из модулей а и б и chunk2 состоит из модулей c и d;
Теперь я пытаюсь получить такое же поведение, используя динамические асинхронные требуют так:
function dynamicLoad(letter){
require(['./modules/' + letter + '.js'], function(module){
//
});
}
Здесь мы не говорим WebPack, как объединить модули вместе с тем выходы будут: main.js
и 1.1.js
где 1.1 состоит из всех модулей a, b, c и d.
Есть ли способ определить, как мы хотим (или предпочитаем) модули объединяться в куски?
UPDATE:
Я нашел этот плагин split-by-name-webpack-plugin, который делает именно то, что я хочу, но только для ввода куска, не работает для динамического куска. Я рассмотрю этот плагин и посмотрю, смогу ли я заставить его работать так, как я хочу.
Как вы произвольно группируете некоторые модули вместе? Я смог заставить его работать с помощью '' 'require.include()' '', но я должен сделать это на всех модулях, которые хочу объединить вместе. Есть ли лучшее решение ? – Ghetolay
Вы по-прежнему можете передать параметр «имя» загрузчику для управления тем, в каком фрагменте идет модуль + все зависимости модуля будут в комплекте автоматически. Если по какой-то причине это по-прежнему не так, как вы хотите, можете ли вы предоставить дополнительную информацию о том, чего вы хотите достичь? – somebody32