是否可以关闭整个文件的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-disable @typescript-eslint/no-unused-vars */
重要的是要知道,至少在我的情况下,评论的类型是有区别的。之前的评论对我来说是可行的,但下面的评论行不通:
// eslint-disable @typescript-eslint/no-unused-vars
其他回答
您可以通过将配置放在文件的顶部来关闭/更改文件的特定规则。
/* eslint no-use-before-define: 0 */ // --> OFF
or
/* eslint no-use-before-define: 2 */ // --> ON
更多信息
你可以使用/*eslint [<rule: "off"], >]*/关闭一个文件的特定规则
/* eslint no-console: "off", no-mixed-operators: "off" */
版本:eslint@4.3.0
简单地在你的项目根目录中创建一个空文件.eslintignore,即你想要忽略的文件的路径类型。
来源:https://eslint.org/docs/2.13.1/user-guide/configuring: ~:文本= % 20禁用% 20规则% 20警告% 20,* % 2 f % 20警报(“foo”)% 3 b
行忽略文件和目录
你可以配置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 */
... code that violates rule ...
/* eslint-enable no-use-before-define */
类似于问题中提到的eslint-disable-line。如果您不想在重新启用规则配置时恢复复杂的规则配置,那么这可能是一个更好的方法。