巴别不尊重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通过每个目录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 

ignoreignore选项的行为? --ignore node_modules,b,c在命令行上的效果稍微好一些,但是如果指定了--out-dir ,它似乎只能尊重第一个参数。

编辑:每个上面刚刚接受的答案巴别忽略几个目录并不能解决问题。 指定一个输出目录似乎会导致指定的第一个目录--ignore从列表中删除。 在任何情况下,它都不能解释为什么.babelrc选项似乎没有任何作用。它总是很有诱惑力来呐喊'错误',但我想知道是否错过了一些东西。

根据上面的评论,有一个在https://phabricator.babeljs.io/T6726logging的错误。 不过,似乎解决使用命令行语法的方法是完全避免使用。 代替:

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

我已经取得了一些成功:

 babel . --ignore b,c --out-dir c