про БЭМ, но в большей степени про реакт и вообще архитектуру. Допустим у меня есть компонент Menu в котором компоненты MenuItem и т.д. В sass это выглядело бы след. образом:
.menu {
.&__item {
}
}
Я разбиваю свой код на css модули, т.е отдельные файлы для каждого компонента (я не изолирую стили друг от друга), т.е я просто делаю общий импорт стилей и всё.
В компоненте MenuItem:
import './MenuItem.sass'
Ну и в Menu аналогично и встает вопрос, а где все преимущества sass + БЭМ в данном подходе?
MenuItem.sass:
.menu .menu__item .menu__item_selected {
}
Т.е я в этих стилях просто не имею доступа к .menu { } что бы вложить что-то туда, сейчас я решаю эту проблему просто не создавая MenuItem.sass и храня все стили в компонентах обёртках
Тебе не нужно писать это в menu__item.scss: .menu .menu__item. Вместо этого ты просто пишешь .menu__item {...
Цсс-модули уже изолируют стиль под скопом "цсс-модуля", поэтому БЭМ писать не обязательно
Обсуждают сегодня