Size: a a a

2018 December 17

АВ

Антон Виноградов in БЭМ
Сначала CSS модули, а потом песни бузовой слушать начнёшь?:)
источник

SB

Sergey Belozyorcev in БЭМ
Антон Виноградов
Сначала CSS модули, а потом песни бузовой слушать начнёшь?:)
Ох уж эта наклонная....
источник

АВ

Антон Виноградов in БЭМ
источник

SB

Sergey Belozyorcev in БЭМ
источник

SB

Sergey Belozyorcev in БЭМ
Это всё недосыпы... А речь про префиксы уже не первый раз встаёт :)
источник

VG

Vladimir Grinenko in БЭМ
спасибо, влил!
источник

MM

Mihail Mihail in БЭМ
Sergey Belozyorcev
Имхо, всё равно нужно смотреть в сторну css модулей или как сделано это с scoped во vue.
Для js это может быть 5 кнопкок (грубо говоря) из 5 либ. Он отработает нормально.
В каждой либе могут быть свои особенности стилизации и здесь начинаются конфликты с селекторами.

При использовании "чистого BEM" нужно постоянно контролировать неймспейс... А это не всегда возможно.

Я в последнее время сколняюсь к тому, что в будещем BEM CSS будет всё реже и реже.
От BEM останется только FS и предикаты (модификатры/пропсы для выбора шаблонов).
Моё субъективное мнение.
спасибо, буду думать
источник

VG

Vladimir Grinenko in БЭМ
мы ломали-ломали ссылки на bem.info, но теперь они снова должны работать правильно (по крайней мере большая их часть ;)
источник

SB

Sergey Belozyorcev in БЭМ
Mihail Mihail
спасибо, буду думать
Это чисто размышления. Не более.

Мы у себя используем классический подход и следим за именами блоков. Особых проблем не возникало.

Проблемы бывают при использовании сторонних либ, даже если она по БЭМ сделана. Т.к. могут быть конлфикты в именах. На проекте, грубо говоря, был блок "calendar", но у него не хватало фич. Но есть готовый календарь с нужными возможностями.... Но нельзя его просто так взять и вставить. Нужно либо форкать, либо "грабить" :).

Возможно будет решение в виде bem модулей или чего-то подобного. Чтобы работало как css модули или похожим способом. Чтобы префиксы сами ставилилсь. Но этого, пока нет (по крайней мере я не знаю).
источник

MM

Mihail Mihail in БЭМ
т.е. у вас просто есть договоренности, какие имена лучше не занимать? Т.е. если нужно создать блок — смотрим в blocks.common нет ли там блока с таким же именем? Про календарь — мне пока не приходилось использовать ui библиотеки as is, все равно расширял их...
источник

SB

Sergey Belozyorcev in БЭМ
Mihail Mihail
т.е. у вас просто есть договоренности, какие имена лучше не занимать? Т.е. если нужно создать блок — смотрим в blocks.common нет ли там блока с таким же именем? Про календарь — мне пока не приходилось использовать ui библиотеки as is, все равно расширял их...
Да. Блоки имеют отностельно нормальные имена. Редко когда приходится придумывать новое имя, т.к. оно уже занято.
источник

SB

Sergey Belozyorcev in БЭМ
А делать хоть 1 префиск на project уровне или уровне платформы вообще не возникало необходимости.

Правда есть одно но ))))) Бывают крутые постфиксы )))) Костыль конечно... Но не всегда можно отрефакторить весь проект....

Грубо говоря это выглядит так.

button1
button2
button3
buttonN ))))
источник

MM

Mihail Mihail in БЭМ
ох печаль)
источник

MM

Mihail Mihail in БЭМ
вот этого я и хочу избежать))
источник

SB

Sergey Belozyorcev in БЭМ
Это утрировано ) У нас такой только 1 блок
источник

MM

Mihail Mihail in БЭМ
в доках по БЭМ приводятся примеры блоков со слишком общими названиями: button, modal, input etc. В какой-то момент появляется еще одна модалка/кнопка и спустя время сложно по имени понять, в чем сущность этих компонентов.))) Я подумал, что если блоки создаются программно, через npm script, например, то проблема с дублированием уже занятого базового блока решается довольно просто.
источник

SB

Sergey Berezhnoy in БЭМ
Mihail Mihail
т.е. у вас просто есть договоренности, какие имена лучше не занимать? Т.е. если нужно создать блок — смотрим в blocks.common нет ли там блока с таким же именем? Про календарь — мне пока не приходилось использовать ui библиотеки as is, все равно расширял их...
примерно так
источник

SB

Sergey Berezhnoy in БЭМ
Mihail Mihail
в доках по БЭМ приводятся примеры блоков со слишком общими названиями: button, modal, input etc. В какой-то момент появляется еще одна модалка/кнопка и спустя время сложно по имени понять, в чем сущность этих компонентов.))) Я подумал, что если блоки создаются программно, через npm script, например, то проблема с дублированием уже занятого базового блока решается довольно просто.
разработчикам проекта полезно знать про все существующие блоки — в том числе такой явный конфликт имён может помочь не писать новый блок, а заиспользовать существующий (может добавить ему модификатор)
источник

MM

Mihail Mihail in БЭМ
есть вопрос:
источник

MM

Mihail Mihail in БЭМ
источник