@filnor
Frontend

Как правильно темизировать React компоненты?

Добрый день.
У меня в приложении возникла надобность темизировать некоторые компоненты программы.

При чем, если в некоторых случаях, это просто изменение цвета приложения - то в других, это еще и изменение разметки (лейаута).
Читал, что цвета можно прокидывать через контекст (Еще ни разу не делал, если знаете хорошие статьи на тему, поделитесь пожалуйста), но как быть с разным лейаутом?
Предполагается, что разных тем будет около 10 шт., идентификатор темы будет приходить при запросе и соответствено зависимо от ответа сервера нужно будет показывать правильный компонент. Хочу понять куда копать:
а) Структурно, как можно максимально удобно разместить файлы тем
б) Как это все правильно прокидывать архитектурно внутри приложения.

Я предполагаю, что это все нужно реализовывать просто через какую-то обвертку, которая будет определять тему и соответствено возвращать нужный компонент. Но на то что бы писать костыли особо нету времени, по этому ищу совета.

Сейчас структура компонента выглядит примерно так:


Company
|- About
|-- AboutSubComponents
|-- about.js
|-- about.css
|- Contacts
|-- contacts.js
|-- contacts.css
|- Products
|-- Products.js
|-- Products.css
| company.js
| company.css

  • Вопрос задан
  • 1001 просмотр
Пригласить эксперта
Ответы на вопрос 2
@webe
Забыть про CSS и взять Styled Components
Ответ написан
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.
https://medium.com/@_bengarrison/accessing-and-mod...
либо просто создать файлы стилей с наборами переменных.
Поддержка браузерами
https://caniuse.com/#search=css%20variables
Ответ написан
Ваш ответ на вопрос

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

Войти через TM ID
Похожие вопросы