Можно ли с помощью ESLint игнорировать одно конкретное правило для всего каталога?
В моем случае я хотел бы игнорировать import/prefer-default-export
по import/prefer-default-export
для каталога с именем commonComponents
Можно ли с помощью ESLint игнорировать одно конкретное правило для всего каталога?
В моем случае я хотел бы игнорировать import/prefer-default-export
по import/prefer-default-export
для каталога с именем commonComponents
Файлы конфигурации ESLint (.eslintrc
) являются иерархическими:
ESLint автоматически ищет их в каталоге файла, который будет листероваться, и в последовательных родительских каталогах вплоть до корневого каталога файловой системы. Эта опция полезна, когда вам нужны разные конфигурации для разных частей проекта или когда вы хотите, чтобы другие могли напрямую использовать ESLint, не задумываясь о передаче в файл конфигурации.
Вы можете отключить правило import/prefer-default-export
для каталога commonComponents
, создав файл .eslintrc
со следующим содержимым в этом каталоге:
{
"rules": {
"import/prefer-default-export": "off"
}
}
Вы также можете использовать клавишу "переопределения" для объявления правил для различных шаблонов глобуса.
Ознакомьтесь с конфигурацией на основе шаблонов глобусов
Иногда требуется более точно контролируемая конфигурация, например, если конфигурация для файлов в одном и том же каталоге должна отличаться. Поэтому вы можете предоставить конфигурации в ключе переопределений, которые будут применяться только к файлам, которые соответствуют определенным шаблонам глобусов, используя тот же формат, который вы передаете в командной строке (например, app/**/*. Test.js).
Я использую это для удаления правила no-unused-expressions
из моих тестовых файлов, вот так;
"overrides": [{
"files": [ "*.spec.js" ],
"rules": {
"no-unused-expressions": 0
}
}]
Если есть несколько каталогов, к которым вы хотите применить свои правила, вы можете создавать разные конфигурации для разных целей. Например:
.eslintrc.json
для общей конфигурации.eslintrc-main.json
для основной линки и запуска eslint -c .eslintrc-main src test
.eslintrc-comp.json
для компонентов и запустить eslint -c .eslintrc-comp commonComponents fooBarComponent