禁用.babelrc继承

时间:2015-09-12 15:36:43

标签: babeljs

如何强制babel不要查看.babelrc的父目录?

  • 我有两个.babelrc个文件:./a/.babelrc./a/example/.babelrc
  • 我正在babel路径中运行./a/example
  • ./a/.babelrc定义了一个插件“lodash”。
  • 我不想在./a/example
  • 中执行babel时使用此插件

我尝试将./a/example/.babelrc设置为:

{
    "stage": 0,
    "plugins": []
}

但是,在babel路径中运行./a/example仍然使用“lodash”插件。

$ pwd
/a/example
$ cat ./.babelrc
{
    "stage": 0,
    "plugins": []
}
$ cat ./../.babelrc
{
    "stage": 0,
    "plugins": [
        "lodash"
    ]
}
$ babel ./src/
Error: ENOENT: no such file or directory, scandir '/a/node_modules/babel-plugin-lodash/node_modules/lodash'
    [..]
$ babel --babelrc ./.babelrc ./src/
Error: ENOENT: no such file or directory, scandir '/a/node_modules/babel-plugin-lodash/node_modules/lodash'
    [..]

1 个答案:

答案 0 :(得分:12)

有一个名为breakConfig的无证件属性。将breakConfig设置为true以禁用配置继承。

此行为将在6.x中发生变化。在6.x中,Babel会在它找到的第一个.babelrc上中断。 extends属性将用于显式命名要继承的其他.babelrc文件。