Добрый день.
У меня в приложении возникла надобность темизировать некоторые компоненты программы.
При чем, если в некоторых случаях, это просто изменение цвета приложения - то в других, это еще и изменение разметки (лейаута).
Читал, что цвета можно прокидывать через контекст (Еще ни разу не делал, если знаете хорошие статьи на тему, поделитесь пожалуйста), но как быть с разным лейаутом?
Предполагается, что разных тем будет около 10 шт., идентификатор темы будет приходить при запросе и соответствено зависимо от ответа сервера нужно будет показывать правильный компонент. Хочу понять куда копать:
а) Структурно, как можно максимально удобно разместить файлы тем
б) Как это все правильно прокидывать архитектурно внутри приложения.
Я предполагаю, что это все нужно реализовывать просто через какую-то обвертку, которая будет определять тему и соответствено возвращать нужный компонент. Но на то что бы писать костыли особо нету времени, по этому ищу совета.
Сейчас структура компонента выглядит примерно так:
Company
|- About
|-- AboutSubComponents
|-- about.js
|-- about.css
|- Contacts
|-- contacts.js
|-- contacts.css
|- Products
|-- Products.js
|-- Products.css
| company.js
| company.css