#javascript #bundle #rollupjs
#javascript #пакет #rollupjs
Вопрос:
Я работаю над несколькими веб-приложениями и пытаюсь использовать накопительный пакет для объединения моего кода. Я создал небольшую программу, которая может выполнить объединение для меня. Однако я столкнулся с проблемой форматирования IIFE.
Я пробовал другие форматы, такие как ‘es’ и ‘amd’, но столкнулся с другими проблемами. Я немного почитал, и кажется, что IIFE является наиболее подходящим форматом.
Я получаю эту ошибку в консоли при попытке объединения:
Предупреждение о необработанном promiserejectionwarning: Ошибка: форматы вывода UMD и IIFE не поддерживаются для сборок с разделением кода
Вот код для объединения:
function createBundle(slug, destinationPath) {
const config = {
input: './apps/' slug '/index.js',
preserveEntrySignatures: false,
plugins: [resolve({preferBuiltins: false}), common()]
}
rollup.rollup(config).then((bundle) => {
bundle.generate({format: 'iife'}).then((result) => { //'es' 'cjs' 'amd'
compileCode('app.js', result.output[0].code, destinationPath);
});
});
}
Кто-нибудь знает исправление для этого или есть предложения по его решению?
Комментарии:
1. Не выполнять разделение кода, если вам нужен вывод IIFE?
2. @BenjaminGruenbaum Эти проекты большие, и это становится смехотворно беспорядочным, если я не разделяю код на несколько файлов, которых я боюсь.
Ответ №1:
Найдено немного странное решение этой проблемы. Удаление core-js.