关闭特定行的eslint规则

时间:2015-01-01 15:47:47

标签: javascript jshint eslint

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

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

我一直试图找到相当于以上的eslint。

11 个答案:

答案 0 :(得分:1771)

您现在可以使用单行语法:

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

function Thing() {

     this.sayHello = function() { console.log("hello"); };

}

或者如果您不想在实际代码的同一行上发表评论,可以禁用下一行:

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

请求的文档链接:http://eslint.org/docs/user-guide/configuring.html#configuring-rules

答案 1 :(得分:435)

您可以使用以下

/*eslint-disable */

//suppress all warnings between comments
alert('foo');

/*eslint-enable */

docs;

的“配置规则”部分略显隐藏

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

/*eslint eqeqeq:0*/

更新

ESlint现已更新,更好地禁用了一行,请参阅@ goofballLogic的excellent answer

答案 2 :(得分:182)

您还可以通过在启用(打开)和禁用(关闭)块中指定特定规则/规则(而非全部)来禁用特定规则/规则

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

alert('foo');
console.log('bar');

/* eslint-enable no-alert */

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

答案 3 :(得分:60)

使用内联注释禁用规则

http://eslint.org/docs/user-guide/configuring#disabling-rules-with-inline-comments



/* 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-line
alert('foo');




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

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




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

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





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




答案 4 :(得分:30)

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

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

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

答案 5 :(得分:29)

答案

您可以使用内嵌评论:htmlspecialchars

实施例

// eslint-disable-next-line rule-name

参考

ESLint - Disabling Rules with Inline Comments

答案 6 :(得分:7)

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

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

答案 7 :(得分:6)

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

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

答案 8 :(得分:3)

或者对于下一行的多个忽略,请使用逗号将规则字符串化

procedure update_refnr(
  p_refnr in number,
  p_processeddate in date
)
is
begin
    UPDATE TRANSACTION t 
       SET t.refnr = p_refnr
     WHERE EXISTS (SELECT p_processeddate 
                     FROM terminal_tbl
                    WHERE t.TERMINALID= term.TERMINALID
                      AND t.processeddate = p_processeddate
                      AND t.refnr IS NULL);   
--exception handling below

end update_refnr;

答案 9 :(得分:0)

单行注释在react dumb功能组件中对我不起作用,我通过添加添加来禁用文件级别 / * eslint-disable insertEslintErrorDefinitionHere * /

(通常,如果您正在使用vs代码并出现eslint错误,则可以单击出现错误的行,然后灯泡将显示在vs代码中,右键单击灯泡并选择任何禁用选项,vs代码将显示为你做。)

答案 10 :(得分:-4)

您可以将错误的文件添加到项目中的.eslintignore文件中,就像所有.vue文件一样,只需添加/*.vue