ESLint:如何设置" new-cap"规则" capIsNewExceptions"文件中的选项?

时间:2015-06-19 21:55:19

标签: javascript eslint

我尝试将ESLint's new-cap规则设为接受"S"作为允许的函数名称:

/*eslint new-cap : [capIsNewExceptions : ["S"]] */
var S = require("string");
var lines = S(text).lines(); // <-- ESLint still gives a warning for cap 'S'!

如上所述,我的ESLint解析器(在IntelliJ中)继续向我发出new-cap警告。

我尝试过仔细应用ESLint documentation

here开始,我看到一个示例规则,如下所示:/*eslint quotes: [2, "double"], curly: 2* /,其中我收集了quotescurly规则,并且quotes规则包含两个选项,因此包含在括号中,因为文档说If a rule has additional options, you can specify them using array literal syntax(它在示例上方说明了这一点)。

然后,从the actual documentation for new-cap,我发现capIsNewExceptions作为选项提供,并且此选项的值应该是所需函数名称的数组 - 就像我尝试过的那样在上面的代码中做。

但它不起作用。我仍然收到ESLint警告。

支持在Javascript文件中使用capIsNewExceptions规则自定义new-cap选项以用于ESLint的正确语法是什么?

1 个答案:

答案 0 :(得分:4)

尝试

0

现在,为什么这样做?

您是否正确使用数组将选项传递给规则,但在the docs中,他们提到此数组的第一个元素始终是“规则ID”:数字从0到2,它定义如何适用该规则:
  1 - 禁用规则,
  2 - 将其作为警告,
  options - 使其成为错误。

我懒得检查,但我假设数组的其余部分作为context的{​​{1}}属性传递给规则本身。从new-cap规则的source code开始,看起来只有一个选项是具有可能配置属性的对象,如capIsNewExceptionsnewIsCap等。