Babel не уважает опцию игнорирования API

Учитывая следующие минимальные package.json:

{
  "babel": {
    "presets": ["es2015"],
    "ignore": [
      "b",
      "c",
      "node_modules"
    ]
  },
  "devDependencies": {
    "babel-cli": "^6.8.0",
    "babel-preset-es2015": "^6.6.0"
  },
  "scripts": {
    "transpile": "babel *.js **/*.js --out-dir c"
  }
}

И структура каталогов:

foo.js
a/
  bar.js
b/
  baz.js

npm run transpile просматривает все каталоги, включая выходной каталог, если он существует:

foo.js -> c/foo.js
a/bar.js -> c/a/bar.js
b/baz.js -> c/b/baz.js
c/foo.js -> c/c/foo.js

Что мне не хватает в поведении опции ignore? --ignore node_modules,b,c в командной строке работает немного лучше, хотя если указано --out-dir, похоже, учитывается только первый аргумент.

Изменить: как указано выше, принятый ответ на Babel игнорирует несколько каталогов не решает проблему. Указание выходного каталога каким-то образом приводит к тому, что все каталоги, кроме первого, указанного в --ignore, удаляются из списка. В любом случае, это не объясняет, почему опция .babelrc, по-видимому, не действует... всегда хочется кричать "ошибка", но я подумал, не пропустил ли я что-то.


person Rich Churcher    schedule 05.05.2016    source источник
comment
Возможный дубликат Babel игнорирует несколько каталогов   -  person stdob--    schedule 05.05.2016
comment
@stdob, как указано выше, запятые в параметре командной строки работают, но только если за ними не следует выходной каталог.   -  person Rich Churcher    schedule 05.05.2016
comment
Оказывается, это все-таки ошибка... phabricator.babeljs.io/T6726. Думаю, мои поиски были не на пустом месте.   -  person Rich Churcher    schedule 05.05.2016


Ответы (1)


Согласно комментарию выше, на странице https://phabricator.babeljs.io/T6726 зарегистрирована ошибка. Однако кажется, что способ обойти использование синтаксиса командной строки состоит в том, чтобы вообще избегать глобусов. Вместо:

babel **/*.js --ignore b,c --out-dir c

У меня был некоторый успех с:

babel . --ignore b,c --out-dir c
person Rich Churcher    schedule 11.05.2016