Как сделать так, чтобы веб-пакет принимал необязательную цепочку без бабела - PullRequest
1 голос
/ 29 января 2020

Сценарий:

  • Мы используем веб-пакет 4 для создания пакета из наших Javascript источников.
  • Мы не используем Babel, потому что мы авторизируемся только для одной платформы (последняя Chrome), и мы используем только функции, непосредственно доступные в Chrome, таким образом Транспортировка не требуется.

Плюсом этого является меньший пучок и намного более быстрое время выполнения при разработке.

Теперь мы хотели бы начать использовать stage 4 опциональную функцию сцепления , которую можно включить в Chrome, используя флаг .

I Я пытался найти это в Google, и все, что мне удалось найти, это то, что babel имеет плагин для этого .

Вопрос: есть ли способ заставить веб-пакет принять этот синтаксис опуская babel?

Вот что в данный момент сообщает веб-пакет:

ERROR in ./src/js/components/custom-select.js 245:12
Module parse failed: Unexpected token (245:12)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
|      */
|     focus() {
>         this.input?.focus();
|         return this;
|     }
 @ ./src/js/components/components.js 16:0-49 16:0-49

1 Ответ

3 голосов
/ 29 января 2020

Согласно этой аналогичной проблеме , webpack использует синтаксический анализатор Acorn и, таким образом, предположительно нуждается в Acorn для поддержки необязательной цепочки в первую очередь. У Acorn есть открытый запрос извлечения здесь для необязательного связывания, но в то же время «решение», предложенное пользователем в первом выпуске, заключается в том, чтобы отключить синтаксический анализ файлов, которые необязательно, с помощью модуля . noParse до тех пор, пока Acorn и webpack не поддерживают эту функцию.

...