Задать вопрос

Какую архитектуру css выбрать для приложения на React?

Всем доброго времени! очень хорошо знаком с такими методами разделения файловой структуры css как БЭМ, SMACSS... Начав работу над React-приложением, встал вопрос о построении css архитектуры на проекте, тк кому-то не нравится модульность стилей, а кому-то то что предлагают верх упомянутые методологии... что посоветуете? существуют в данном случае какие-либо паттерны или шаблоны?
  • Вопрос задан
  • 930 просмотров
Подписаться 6 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Профессиональная вёрстка на HTML и CSS
    3 месяца
    Далее
  • Skillbox
    Веб-вёрстка 3.0
    3 месяца
    Далее
  • OTUS
    HTML/CSS
    3 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 5
kshshe
@kshshe
Frontend developer
Я использую styled-components. Описываешь стили и используешь их как компоненты, например:
const RedButton = styled.button`
  background-color: red;
`
...
<RedButton>Click me</RedButton>
Ответ написан
Комментировать
sim3x
@sim3x
Есть еще css-in-js

Начните с https://reactjs.org/docs/faq-styling.html

БЭМ, SMACSS - разница не сильно большая. В бем детальнее мануал
Разделение по файлам будет скорее зависеть от препроцессора и ваших личных предпочтений
Ответ написан
Комментировать
Anubis
@Anubis
Люблю корейскую кухню и веб-разработку
Лично мне удобно пользоваться css-модулями, в качестве препроцессора - scss. При должной настройке можно забыть о повторяющихся в проекте именах классов, с server-side rendering подход тоже вполне дружит.
Ответ написан
Комментировать
Sanes
@Sanes
Модульная структура удобней, если это не одноразовая работа. Не зря же фреймворки используют такой стиль.
Ответ написан
Комментировать
@Listrigon
Сколько не читаю про эти все CSS in JS, все равно склоняюсь к тому, что React отдельно, стили отдельно. Сделать отдельную папку Less/Scss, и в ней отдельные стили по Бэм или другой методике, которые никак не завязаны на какие то конкретные компоненты и UI библиотеки. А уже в React вставляю классы. Т.е так сказать CSS первично.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
FoodSoul Калининград
от 180 000 до 250 000 ₽
Data Directs Тель-Авив
от 350 000 ₽