Выполните задачи веб-пакета для определенных файлов, используя переменные env
В последнее время я экспериментировал с веб-пакетом, но наткнулся на проблему.
Я объявил несколько точек входа, как это:
entry: {
bundle1 : './src/file1.js',
bundle2 : './src/file2.js',
bundle3 : './src/file3.js',
}
И я объявил динамический вывод для каждого файла ввода, например:
output: {
filename: '[name]/[name].js',
path: path.resolve(__dirname, 'dist')
}
Это было нормально, пока я не решил сделать такие задачи, как gulp и связывание определенных файлов. Мне было интересно, смогу ли я передать переменные точке входа и указать в package.json конкретный скрипт, который выполняет только конкретную задачу.
Например. файл package.json:
"scripts": {
"file1": "webpack --mode production --env=production --entrypoint=file1"
}
Обратите внимание на --entrypoint.
У кого-нибудь есть решение для этого? (Желательно без использования глотка)
Заранее спасибо!
Изменить: просто чтобы отметить, я попытался следующее безуспешно
Я начал свою конфигурацию webpack следующим образом:
module.exports = (entrypoint) => {
И тогда я объявил некоторые константы, например,
const file1 = JSON.parse(entrypoint === "file1");
const file2 = JSON.parse(entrypoint === "file2");
const file3 = JSON.parse(entrypoint === "file3");
Затем я сделал заявление переключателя для каждого случая
switch(entrypoint) {
case file1:
return {
"file1": "./src/file1.js"
}
case file2:
return {
"file2" :'./src/file2.js'
}
case file3:
return {
"file3" :'./src/file3.js'
}
}
Наконец, я передаю вывод в запись