Выполните задачи веб-пакета для определенных файлов, используя переменные 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'
  }

}

Наконец, я передаю вывод в запись

0 ответов

Другие вопросы по тегам