关闭特定行的eslint规则

为了在JSHint中关闭特定行的lint规则,我们使用以下规则:

/* jshint ignore:start*/$scope.someVar = ConstructorFunction();/* jshint ignore:end */

我一直在尝试为eslint找到上面的等价物。

1233014 次浏览

更新

ESlint现在已经更新了一个更好的方法禁用单行,请参阅@goofBallLogic的优秀的答案

老答案:

您可以使用以下

/*eslint-disable */
//suppress all warnings between commentsalert('foo');
/*eslint-enable */

它稍微埋在文档的“配置规则”部分;

要禁用整个文件的警告,您可以在文件顶部包含注释,例如。

/*eslint eqeqeq:0*/

要禁用下一行:

// eslint-disable-next-line no-use-before-definevar thing = new Thing();

或者使用单行语法:

var thing = new Thing(); // eslint-disable-line no-use-before-define

eslint文档

您还可以通过在启用(打开)和禁用(关闭)块中指定它们来禁用具体规则(而不是全部):

/* eslint-disable no-alert, no-console */
alert('foo');console.log('bar');
/* eslint-enable no-alert */

通过@goofball Magic上面的链接:http://eslint.org/docs/user-guide/configuring.html#configuring-rules

行注释的一般结尾,// eslint-disable-line,在它之后不需要任何东西:不需要查找代码来指定您希望ES Lint忽略的内容。

如果您出于快速调试以外的任何原因需要忽略任何语法,那么您就会遇到问题:为什么不更新您的delint配置?

我喜欢// eslint-disable-line,它允许我插入console以快速检查服务,而我的开发环境不会因为违反协议而阻碍我(我通常禁止console,并使用日志类-有时构建在console之上)。

答案

您可以使用内联注释:// eslint-disable-next-line rule-name

示例

// eslint-disable-next-line no-consoleconsole.log('eslint will ignore the no-console on this line of code');

参考

ESLint-禁用带有内联注释的规则

要为以下文件的其余部分禁用单个规则:

/* eslint no-undef: "off"*/const uploadData = new FormData();

配置ESLint-禁用带有内联注释的规则

/* eslint-disable no-alert, no-console */

/* eslint-disable */
alert('foo');
/* eslint-enable */

/* eslint-disable no-alert, no-console */
alert('foo');console.log('bar');
/* eslint-enable no-alert, no-console */

/* eslint-disable */
alert('foo');

/* eslint-disable no-alert */
alert('foo');

alert('foo'); // eslint-disable-line
// eslint-disable-next-linealert('foo');

alert('foo'); // eslint-disable-line no-alert
// eslint-disable-next-line no-alertalert('foo');

alert('foo'); // eslint-disable-line no-alert, quotes, semi
// eslint-disable-next-line no-alert, quotes, semialert('foo');

foo(); // eslint-disable-line example/rule-name

您可以在项目中添加给. eslintignore文件带来错误的文件。就像所有. vue文件一样,只需添加/*. vue

单行注释在反应愚蠢的功能组件中对我不起作用,我通过添加来使用文件级别禁用/*使用eslint-disable方法插入错误定义*/

(通常,如果您使用的是vs代码并出现eslint错误,您可以单击提供错误的行,并且在vs代码中会出现一个灯泡,右键单击灯泡并选择任何禁用选项,vs代码将为您完成。

或者对于下一行的多个忽略,使用逗号将规则串起来

// eslint-disable-next-line class-methods-use-this, no-unused-vars

要禁用特定行上的所有规则:

alert('foo'); // eslint-disable-line

我的回答,类似于其他人给出的,但显示了如何在同一行中为自己添加评论。

// eslint-disable-line // THIS WON"T WORK

如果您还需要在该行上写注释,请使用--(例如,为什么禁用eslint)

// eslint-disable-line -- comment to self (This DOES work)

可以与特定的eslint规则结合使用来忽略:

// eslint-disable-line no-console -- comment to self (This Also Works!)