包括同一ESLint规则的错误和警告

Including both errors and warnings for same ESLint rule?

本文关键字:错误 警告 规则 ESLint 包括同      更新时间:2023-09-26

我的团队正在重构我们的代码库,我们使用ESLint来识别有lint错误的文件。我们目前有一个.eslintrc文件具有极高的阈值,并且在对代码库中的某些文件进行改进时,正在逐步降低这些阈值。例如,我们的"最大语句"阈值设置为99个语句,我们的目标是将其减少到20个语句。因此,我们逐渐将阈值从99降低到98,再降低到97等,直到我们看到出现lint错误。然后我们知道下一步要重构哪个文件。

问题是,这种策略并不能止血。为了继续上面的例子,假设引入了一个新的控制器,它有45条语句。这个数字低于我们当前的阈值(因为我们的瓶颈文件有99条语句),但高于20条语句的目标阈值。

理想情况下,我们希望看到违反当前阈值的任何lint错误的错误,以及违反目标阈值的lint错误警告。这将为我们提供一份所有违规文件的列表,并首先对违规行为最严重的文件进行分类。例如:

// inside .eslintrc
.... 
 "rules": {
   "max-statements": [2, 99],
   "max-statements": [1, 20]
 }
 ....

在这种情况下,我们会看到任何包含20条以上语句的文件的警告,以及每个包含99条以上语句文件的错误。

我尝试实现上述配置,但正如我担心的那样,第一个"最大语句"规则被第二个规则覆盖。

有什么方法可以实现我所描述的吗?

从命令行运行ESlint时,可以指定配置文件。只需使用不同的配置调用该命令两次即可。

如果需要的话,您实际上可以解析第一次运行的结果,并在第二次运行中忽略有错误的文件。