jco*_*lum 3 glob node.js babeljs babel-cli
"@babel/cli": "^7.2.3",
Run Code Online (Sandbox Code Playgroud)
看起来真的很简单。
https://babeljs.io/docs/en/babel-cli#ignore-files
babel src --out-dir lib --ignore "src/**/*.spec.js","src/**/*.test.js"
Run Code Online (Sandbox Code Playgroud)
所以我这样设置:
babel src --out-dir cjs --ignore "**/_*" --copy-file --watch
Run Code Online (Sandbox Code Playgroud)
全局参考: https: //github.com/isaacs/node-glob
但我在输出中看到了这一点:
add:cjs/__mocks__/@xyz/common-fn.js
add:cjs/middleware/__mocks__/uuid.js
Run Code Online (Sandbox Code Playgroud)
好的,我试试这个:
babel src --out-dir cjs --ignore "**/_+","_+" --copy-file --watch
Run Code Online (Sandbox Code Playgroud)
还有这些:
babel src --out-dir cjs --ignore "**/_*/*.*\ --copy-file --watch
babel src --out-dir cjs --ignore "**/__mocks__/*.*", --copy-file --watch
babel src --out-dir cjs --ignore "[src|middleware]/**/__mocks__/*.*" --copy-file --watch"
babel src --out-dir cjs --ignore "**/_+/**/*.*" --copy-file --watch
Run Code Online (Sandbox Code Playgroud)
每次结果都一样。看起来最后一个应该有效:忽略任何具有零个或多个目录的路径,后跟一个名称中至少有一个 _ 的目录,然后是零个或多个目录,然后是与任何模式匹配的文件。我读得对吗?
然后我尝试非常具体:
babel src --out-dir cjs --ignore "nes/middleware/__mocks__/*.js", --copy-file --watch
Run Code Online (Sandbox Code Playgroud)
我得到:
add:nes/middleware/__mocks__/localize.js
Run Code Online (Sandbox Code Playgroud)
我无法判断这是 Babel 中的错误还是我对 glob 模式的误解。
关于Babel 是否在 CLI 级别完全支持 Glob 模式似乎存在一些争论。
我设法让它与这种忽略模式一起工作:
--ignore "src/**/__mocks__/**/*.js" --ignore "src/**/*.test.js"
Run Code Online (Sandbox Code Playgroud)
这种模式**/__*/**在 Glob 中有效,但在 Babel 中失败。
| 归档时间: |
|
| 查看次数: |
4371 次 |
| 最近记录: |