是否可以关闭整个文件的eslint规则?例如:
// eslint-disable-file no-use-before-define
(类似于eslint-disable-line。)我经常遇到这样的情况,在某个文件中,我在许多地方违反了特定的规则,这对该文件来说是OK的,但我不想为整个项目禁用该规则,也不想为该特定文件禁用其他规则。
是否可以关闭整个文件的eslint规则?例如:
// eslint-disable-file no-use-before-define
(类似于eslint-disable-line。)我经常遇到这样的情况,在某个文件中,我在许多地方违反了特定的规则,这对该文件来说是OK的,但我不想为整个项目禁用该规则,也不想为该特定文件禁用其他规则。
当前回答
您可以通过将配置放在文件的顶部来关闭/更改文件的特定规则。
/* eslint no-use-before-define: 0 */ // --> OFF
or
/* eslint no-use-before-define: 2 */ // --> ON
更多信息
其他回答
你可以通过在项目的根目录中创建一个.eslintignore文件来告诉ESLint忽略特定的文件和目录:
eslintignore。
build/*.js
config/*.js
bower_components/foo/*.js
ignore模式的行为符合.gitignore规范。 (不要忘记重新启动编辑器。)
你可以使用/*eslint [<rule: "off"], >]*/关闭一个文件的特定规则
/* eslint no-console: "off", no-mixed-operators: "off" */
版本:eslint@4.3.0
你可以配置eslint overrides属性来关闭匹配glob模式的文件的特定规则,如下所示。
在这里,我想关闭测试所有文件的no-duplicate-string规则。
overrides: [
{
files: ["**/__tests__/**/*.[jt]s?(x)", "**/?(*.)+(spec|test).[jt]s?(x)"],
rules: {
'sonarjs/no-duplicate-string': 'off'
}
}
]
禁用文件的指定规则。
/* eslint-disable no-use-before-define */
注意,在eslint中有一个错误,单行注释将不起作用
// eslint-disable max-classes-per-file
// This fails!
查看这篇文章
最好在.eslintrc.js配置文件中添加“overrides”。 例如,如果你不想对所有以Actions结尾的js文件禁用camelcase规则,在.eslintrc.js的rules scope后添加以下代码。
"rules": {
...........
},
"overrides": [
{
"files": ["*Actions.js"],
"rules": {
"camelcase": "off"
}
}
]