SCSS Lint: принудительное использование только имен классов в качестве селектора

У меня есть .scss-lint.yml файл, содержащий все правила, которые я хочу использовать в своем проекте.

Одна вещь, которую мы применяем в нашей SCSS, заключается в том, что в соответствии с документацией BEM нацелены только классы.

Потому что это не охвачено в моем .scss-lint.ymlв настоящее время это является своего рода неофициальным правилом.

Это не сразу видно из страницы scss-lint. Есть ли какое-то правило, которое я могу применить к своему YML, которое будет показывать ошибку, если в качестве селектора используется что-либо, кроме имени класса?

1 ответ

Существует линтер idSelector https://github.com/brigade/scss-lint/blob/master/lib/scss_lint/linter/README.md#idselector который обеспечивает использование классов против идентификаторов в таблицах стилей.

Но если вы используете BEM, я бы посоветовал включить SelectorFormat и передать соглашение BEM - https://github.com/brigade/scss-lint/blob/master/lib/scss_lint/linter/README.md#selectorformat

Так что ваши .scss-int.yml будет содержать

SelectorFormat: enabled: true convention: BEM

и вдобавок ко всему можно использовать

NameFormat: enabled: true convention: BEM

Каждый линтер документирован здесь https://github.com/brigade/scss-lint/blob/master/lib/scss_lint/linter/README.md#linters

Надеюсь, поможет.

Другие вопросы по тегам