Ответы:
Да, есть способ. Два на самом деле. В октябре 2013 года jshint добавил способ игнорировать блоки кода следующим образом:
// Code here will be linted with JSHint.
/* jshint ignore:start */
// Code here will be ignored by JSHint.
/* jshint ignore:end */
// Code here will be linted with JSHint.
Вы также можете игнорировать одну строку с последующим комментарием, например так:
ignoreThis(); // jshint ignore:line
// jshint ignore:line
- прекрасно работает с;(function() { // jshint ignore:line
bad option: 'ignore'
, используя конкретную опцию для строки, которую я хочу игнорировать. В моем случае я хотел игнорировать, if (x == null)
потому что я хочу, чтобы он был больше, чем просто ноль, и использовался /* jshint eqnull:true */
в той же функции, что и if
для отключения JSHint.
«Злой» ответ не сработал для меня. Вместо этого я использовал то, что было рекомендовано на странице документации JSHints . Если вы знаете, что выдается предупреждение, вы можете отключить его для блока кода. Например, я использую какой-то сторонний код, который не использует функции наблюдения за верблюдами, но мои правила JSHint требуют этого, что привело к предупреждению. Чтобы заставить его замолчать, я написал:
/*jshint -W106 */
save_state(id);
/*jshint +W106 */
--verbose
в команду, чтобы получить номер предупреждения.
Как вы можете видеть в документации JSHint, вы можете изменять параметры для каждой функции или для каждого файла . В вашем случае просто поместите комментарий в свой файл или даже более локально только в функции, которая использует eval
:
/*jshint evil:true */
function helloEval(str) {
/*jshint evil:true */
eval(str);
}