Babel ignore规则对项目外目录的*.min.js不生效,该如何配置?
Babel 的 ignore 规则默认基于执行命令的工作目录(也就是你这里的 nodejs_project 目录)做 glob 匹配,你原本配置的 **/*.min.js 只会命中该工作目录下的 .min.js 文件,而 another_project 处于工作目录的上层,路径带有 ../ 前缀,原有规则无法匹配到该目录下的文件。
方案1:修改 babel.config.json 配置(推荐长期使用)
直接在 ignore 数组中补充上层目录的匹配规则即可,修改后的配置如下:
{ "presets": ["@babel/react", "minify"], "ignore": ["**/*.min.js", "../another_project/**/*.min.js"] }
修改后不需要调整运行命令,原有处理 src 目录和新处理 another_project 目录的逻辑都能正常命中忽略规则。
方案2:运行命令时临时指定忽略规则(适合偶尔使用)
如果只是偶尔需要处理 another_project 下的文件,不想修改全局配置,可以在执行命令时追加 --ignore 参数:
npx babel ../another_project/ --out-dir ../another_project/ --out-file-extension .min.js --ignore "../another_project/**/*.min.js"
内容的提问来源于stack exchange,提问作者Mikhail
相关产品推荐
相关产品推荐

