Почему Webpack Task Runner для Visual Studio не позволяет использовать несколько выходных файлов?

Я использую Visual Studio 2017 с установленным расширением Webpack Runner. У меня есть следующие файлы TS:

  • /Scripts/TypeA/A.ts
  • /Scripts/TypeB/B.ts

И хотел бы перенести их на следующее:

  • Сценарии /TypeA/A_transpiled.js
  • Сценарии /TypeB/B_transpiled.js

Нет "чистого" способа сделать это!

  1. Следуя примеру кода "multi-compiler", определение множественного экспорта, кажется, поддерживается в Webpack: https://github.com/webpack/webpack/tree/master/examples/multi-compiler. Тем не менее, это не работает в VS 2017. Я получаю следующую ошибку:

    Неверный объект конфигурации. Webpack был инициализирован с использованием объекта конфигурации, который не соответствует схеме API

  2. Я могу использовать параметр "имя", как показано здесь:

    output: { filename: '[name].js', path: path.resolve(__dirname, './Scripts/') }

но он все равно будет создавать все файлы в одной папке (сценарии).

  1. Лучший, но хакерский способ сделать это - сделать весь путь частью имени записи, как показано здесь:

    entry: { 'Scripts/TypeA/A_transpiled': './Scripts/TypeA/A.ts', 'Scripts/TypeB/B_transpiled': './Scripts/TypeB/B.ts' }, output: { filename: '[name].js', path: path.resolve(__dirname, '') }

Это создаст файлы в правильном месте. Однако это имеет и другие недостатки. Например, экспорт и использование ваших файлов ts в качестве библиотеки потребует от вас использования полного пути (если вы используете параметр "name" в качестве имени библиотеки), что может стать громоздким.

Это похоже на огромный недостаток / отсутствие функциональности. Я что-то упустил, или я сделал что-то не так, используя подход "мультикомпилятор"? Почему что-то такое простое не реализовано в Webpack Task Runner? Должен ли я полностью отказаться от Webpack и просто положиться на Gulp или Grunt?

1 ответ

Решение

Я переустановил веб-пакет, используя npm, чтобы у меня была последняя версия веб-пакета (3.11.0). Я был в состоянии "мультикомпилятор" подход, указанный в этой ссылке:

https://github.com/webpack/webpack/tree/master/examples/multi-compiler

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