Способы расширения ESLint
ESLint обладает широкими возможностями для настройки и расширения с помощью плагинов. Есть множество способов расширить функциональность ESLint.
На этой странице описаны способы расширения ESLint и то, как все эти расширения взаимодействуют друг с другом.
Плагины
Плагины позволяют добавлять в проект собственные пользовательские правила и процессоры ESLint. Вы можете опубликовать плагин как npm-модуль.
Плагины полезны, если для проекта требуется конфигурация ESLint, которой нет в основном пакете eslint. Например, если вы используете библиотеку JavaScript для фронтенда, такую как React, или фреймворк, такой как Vue, у этих инструментов есть функции, для которых нужны пользовательские правила, выходящие за рамки основных правил ESLint.
Часто к плагину прилагается конфигурация ESLint, которая применяет набор его возможностей в проекте. Вы также можете включать конфигурации в плагин.
Например, eslint-plugin-react — это плагин ESLint с правилами, предназначенными специально для проектов React. Эти правила включают проверку единообразного использования методов жизненного цикла компонентов React и требование указывать свойства key при отображении динамических списков.
Подробнее о создании расширений, которые можно включить в плагин, см. в следующей документации:
Подробнее о включении этих расширений в плагин см. в разделе Плагины.
Общие конфигурации
Общие конфигурации ESLint — это предварительно заданные конфигурации, которые можно использовать в своих проектах. Они объединяют правила и другие настройки в npm-пакет. В общую конфигурацию можно включить всё, что можно указать в файле конфигурации.
Вы можете опубликовать общую конфигурацию отдельно или в составе плагина.
Например, популярная общая конфигурация eslint-config-airbnb содержит множество правил, а также некоторые параметры анализатора. Это набор правил ESLint, разработанный в соответствии с руководством по стилю Airbnb JavaScript. Используя общую конфигурацию eslint-config-airbnb, вы можете автоматически применять руководство по стилю Airbnb в проекте, не настраивая каждое правило вручную.
Подробнее о создании общей конфигурации см. в разделе Общие конфигурации.
Пользовательские форматтеры
Пользовательские форматтеры преобразуют результаты проверки ESLint в формат, заданный вами. Они позволяют отображать результаты проверки в формате, который лучше всего подходит для ваших задач: например, в определённом формате файла, стиле отображения или формате, оптимизированном для конкретного инструмента. Создавать пользовательский форматтер нужно только в том случае, если встроенные форматтеры не подходят для вашей задачи.
Например, пользовательский форматтер eslint-formatter-gitlab можно использовать для отображения результатов ESLint в отчётах о качестве кода GitLab.
Подробнее о создании пользовательского форматтера см. в разделе Пользовательские форматтеры.
Пользовательские анализаторы
Пользовательские анализаторы ESLint позволяют расширить ESLint для проверки новых языковых возможностей или пользовательского синтаксиса в коде. Анализатор преобразует ваш код в абстрактное синтаксическое дерево (AST), которое ESLint затем может анализировать и проверять.
В состав ESLint входит встроенный анализатор JavaScript (Espree), но пользовательские анализаторы позволяют проверять код на других языках или расширять возможности встроенного анализатора.
Например, пользовательский анализатор @typescript-eslint/parser расширяет ESLint, позволяя проверять код TypeScript.
Пользовательские анализаторы также можно включать в плагины.
Подробнее о создании пользовательского анализатора см. в разделе Пользовательские анализаторы.
© OpenJS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/latest/extend/ways-to-extend