что означает "modules: auto" в поле @ babel / preset-env? - PullRequest
0 голосов
/ 22 апреля 2019

В Babel Docs сказано, что по умолчанию для модулей выбрана опция auto, что означает auto? это преобразовывает «импорт» в «требовать» или нет? в чем разница между "modules: false" и "modules: auto"? кажется, они имеют одинаковый результат; Я изучаю тряску дерева, когда я не установил никаких параметров для моего @ babel / preset-env, успех тряски дерева, когда я установил «modules: false», тряска дерева также удалась;

  "presets": [
    [
      "@babel/preset-react"
    ],
    [
      "@babel/preset-env",{"modules": "false"}
    ]
  ],

Ответы [ 3 ]

0 голосов
/ 22 апреля 2019

Кажется, что документация для auto описана в этом запросе на получение.В соответствии с этим PR:

По умолчанию auto автоматически выберет false, если вызывающий уже поддерживает синтаксис модуля ES6, или "commonjs" в противном случае.

Таким образом, если поддерживается ES6 (что, похоже, соответствует вашему случаю), установите для модулей значение auto , то же самое, что и настройка false .

0 голосов
/ 22 апреля 2019

auto означает default value, а значение по умолчанию modules равно false.См. - https://github.com/babel/babel/pull/8485/files#r236086742.

enter image description here

0 голосов
/ 22 апреля 2019

позволяет преобразовать синтаксис модуля ES6 в другой тип модуля.

Ссылка: https://babeljs.io/docs/en/babel-preset-env#modules

...