20

Отключение правила ESLint для конкретной строки

13

Проблема с отключением правила линтинга в ESLint

Я пытаюсь отключить правило линтинга для определенной строки кода в ESLint, подобно тому, как это делается в JSHint. В JSHint для этого используется следующая структура комментариев:

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

Но я не могу найти эквивалентный способ сделать то же самое в ESLint. Подскажите, как я могу отключить линтинг для конкретной строки или блока кода в ESLint?

4 ответ(ов)

0

В общем, комментарий // eslint-disable-line не требует дополнительных указаний после него: не нужно уточнять код, который вы хотите, чтобы ESLint игнорировал.

Если вам нужно игнорировать какую-либо синтаксическую конструкцию по причинам, отличным от быстрого отладки, возможно, у вас есть проблемы: почему бы не обновить вашу конфигурацию lint'инга?

Лично я люблю использовать // eslint-disable-line, чтобы вставить console для быстрой проверки работы сервиса, не позволяя среде разработки мешать из-за нарушения протокола. (Я обычно запрещаю console и использую класс логирования, который иногда основывается на console.)

0

Для указания нескольких правил игнорирования на следующей строке, перечислите их через запятую. Например:

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

Таким образом, вы можете одновременно отключить несколько правил ESLint для данной строки кода.

0

Вот перевод вашего ответа в стилe StackOverflow:


Мой ответ похож на другие, но показывает, как вы можете также добавить комментарий к себе на той же строке.

// eslint-disable-line // ЭТО НЕ СРАБОТАЕТ

Используйте --, если вам также нужно написать комментарий на этой строке (например, почему eslint отключен).

// eslint-disable-line -- комментарий для себя (Это СРАБОТАЕТ)

Это можно использовать совместно с конкретными правилами eslint для игнорирования:

// eslint-disable-line no-console -- комментарий для себя (Это тоже работает!)

Если у вас есть дополнительные вопросы, не стесняйтесь задавать!

0

Чтобы отключить отдельное правило ESLint для всей части кода в файле, вы можете использовать комментарий в формате /* eslint-disable правило */, как показано ниже:

/* eslint-disable no-undef */
const uploadData = new FormData();
/* eslint-enable no-undef */ // Это опционально, если вы хотите снова включить правило после данного блока кода

Если вы хотите отключить правило только для конкретной строки, вы можете использовать комментарий на той же строке:

const uploadData = new FormData(); // eslint-disable-line no-undef

Таким образом, вы сохраняете контроль над правилами ESLint, отключая их только там, где это необходимо.

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь