我正在使用OSX,在我的package.json
文件中,我有如下脚本:
"lint": "eslint ./src/**/*.js"
然而,当我运行npm lint
时,只有第一级目录被用于linting,例如:./src/dir/*
而不是./src/dir/nested_dir/*
。
我原以为**
通配符表示递归搜索?
有谁知道我如何使它按预期运行吗?
我正在使用OSX,在我的package.json
文件中,我有如下脚本:
"lint": "eslint ./src/**/*.js"
然而,当我运行npm lint
时,只有第一级目录被用于linting,例如:./src/dir/*
而不是./src/dir/nested_dir/*
。
我原以为**
通配符表示递归搜索?
有谁知道我如何使它按预期运行吗?
改用以下方法:
"lint": "eslint src --ext .js"
或者对于多个扩展名:
"lint": "eslint src --ext .js,.jsx,.ts,.tsx"
请在eslint文档中查看更多信息。
当使用 vue-cli-service
进行代码检查时,也会出现这种情况,因此您需要在引用它时加上引号:
"lint": "vue-cli-service lint './src/main/app/**/*.ts' './src/main/app/**/*.vue'"
这个命令在 monorepos 中递归地工作(第一个 glob 是针对 packages 中的所有子文件夹,第二个 glob 是针对 src 中的任何子文件夹)。如果没有第二个 glob,该命令将无法正常工作。
"lint": "eslint 'packages/**/src/**' --ext .ts,.tsx"
"lint": "eslint \"./src/**/*.js\""
- Mike Suiter