gulp-eslint:如何配置" no-use-before-define"规则

时间:2017-04-15 04:54:44

标签: eslint gulp-eslint

我试图关闭函数的"no-use-before-define"规则,但是对变量和类保持活动状态。

在此处的文档http://eslint.org/docs/rules/no-use-before-define中,它说这是正确的配置语法:

"no-use-before-define": ["error", { "functions": false, "classes": true, "variables ": true }]

当我运行时,虽然我收到此错误:

[21:00:46] Error: CLI:
    Configuration for rule "no-use-before-define" is invalid:
    Severity should be one of the following: 0 = off, 1 = warning, 2 = error (you passed "error").
    Value "[object Object]" must be an enum value.

    at Object.validateRuleOptions (E:\01-Dans stuff\Projects\00 - YeoSword\YeoSword-git\node_modules\gulp-eslint\node_modules\eslint\lib\config\config-validator.js:102:15)
    at CLIEngine.<anonymous> (E:\01-Dans stuff\Projects\00 - YeoSword\YeoSword-git\node_modules\gulp-eslint\node_modules\eslint\lib\cli-engine.js:421:19)
    at Array.forEach (native)
    at new CLIEngine (E:\01-Dans stuff\Projects\00 - YeoSword\YeoSword-git\node_modules\gulp-eslint\node_modules\eslint\lib\cli-engine.js:420:43)
    at Object.gulpEslint (E:\01-Dans stuff\Projects\00 - YeoSword\YeoSword-git\node_modules\gulp-eslint\index.js:17:15)
    at E:/01-Dans stuff/Projects/00 - YeoSword/YeoSword-git/gulp/tasks/eslint.js:24:16
    at taskWrapper (E:\01-Dans stuff\Projects\00 - YeoSword\YeoSword-git\node_modules\undertaker\lib\set-task.js:13:15)
    at bound (domain.js:287:14)
    at runBound (domain.js:300:12)
    at asyncRunner (E:\01-Dans stuff\Projects\00 - YeoSword\YeoSword-git\node_modules\async-done\index.js:36:18)

我知道gulp-eslint语法与官方的eslint配置语法略有不同。

我无法弄清楚{ "functions": false, "classes": true, "variables ": true }位的gulp-eslint语法是什么。在任何地方似乎都没有任何文档。

2 个答案:

答案 0 :(得分:0)

这个答案并没有解释如何进行自定义配置,但它确实解释了如何获得我最初的功能。

"no-use-before-define": [1, "nofunc"]

"nofunc"基本上只是{ "functions": false, "classes": true, "variables ": true }

的快捷命令

我觉得这实际上是gulp-eslint中的一个错误,并且没有实际的方法可以使用该插件进行自定义设置。

答案 1 :(得分:0)

您的规则中有一个额外的空格,就在“变量”一词之后:

“no-use-before-define”:[“error”,{“functions”:false,“classes”:true,“variables”:true}]

这是非法的,会产生错误。

相关问题