让babel排除测试文件

Man*_*uel 43 node.js babeljs

在我的构建步骤中,我使用babel将代码转换为es5(从srcdist).如何使其排除以.test.js?结尾的文件?

的package.json

"scripts": {
  "build": "babel src --out-dir dist",
Run Code Online (Sandbox Code Playgroud)

.babelrc

{
  "presets": [ "es2015" ],
  "ignore": "\\.test\\.js"
}
Run Code Online (Sandbox Code Playgroud)

Wil*_*III 84

根据文档,您应该能够写 .babelrc

{
  "ignore": [
    "**/*.test.js"
  ]
}
Run Code Online (Sandbox Code Playgroud)

但是,我能够验证这似乎不起作用.我试用了6.5.1版(babel-core 6.5.2).

同时,以下工作:

babel src --out-dir build --ignore '**/*.test.js'
Run Code Online (Sandbox Code Playgroud)

这与.babelrc文件中写的相同.如果从npm安装任何glob库,你会发现这个glob模式可以工作(这就是我想出来的......我目前不使用babel).

  • 该文件应命名为.babelrc而不是.bablerc (6认同)
  • 我试过"**/*.test.js","src/**/*.test.js","src/index.test.js".它仍然编译`src\index.test.js - > dist\index.test.js` (2认同)
  • 我尝试使用CLI进行解决方法,我只是注意到`**/*.test.js`两边的```对于使这项工作很重要.否则,它似乎认识到glob怪异.我不知道.. (2认同)

Pub*_*oda 7

到目前为止,以下内容在.babelrc中起作用(babel-core:v6.26.3)

"ignore": [
  "**/__tests__", // ignore the whole test directory
  "**/*.test.js" // ignore test files only
]
Run Code Online (Sandbox Code Playgroud)