project-root
├── app
│ ├── lib
│ │ ├── foo.js
│ │ ├── fooSpec.js
│ ├── components
│ │ ├── bar.js
│ │ ├── barSpec.js
│ ├── .eslintrc.json
├── server
│ ├── server.js
│ ├── serverSpec.js
├── .eslintrc.json
现在有一个项目有如上目录结构,其中foo.js、bar.js、server.js
中字符串采用双引号规则,fooSpec.js、barSpec.js、serverSpec.js
中字符串采用单引号规则,那我们就需要对不同的文件使用不同的检查规则。我们进行如下配置:
module.exports = {
"env": {
"browser": true,
"es6": true,
"node": true
},
"extends": "eslint:recommended",
"globals": {
"Atomics": "readonly",
"SharedArrayBuffer": "readonly"
},
"parserOptions": {
"ecmaVersion": 2018,
"sourceType": "module"
},
"rules": {
"quotes": ["error", "double"]
},
"overrides": [
{
"files": ["./app/**/*Spec.js"], // 匹配app目录的子目录下所有命名以Spec结尾的js文件
"excludedFiles": "./server/*.js", // 排除server目录下所有的js文件
"rules": {
"quotes": ["error", "single"] // 指定匹配文件规则
}
}
]
};
上面配置结果:foo.js、bar.js、server.js、serverSpec.js
将采用双引号股则检查,fooSpec.js、barSpec.js
将采用单引号规则检查。而serverSpec.js
中字符串本身采用的是单引号,那么检查代码时将会报错。
如需修正错误,更改相关配置即可。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。