Применение классов-модификаторов в структуре React Atomi c Design - PullRequest
0 голосов
/ 14 апреля 2020

Мы находимся в процессе разработки способа организации наших компонентов React и считаем, что шаблон Atomi c Design соответствует тому, как компоненты React создаются достаточно хорошо.

У нас очень высокая степень мультитенантности со степенью гибкости в проектах для этих арендаторов (наших клиентов). В то время как в дизайне иногда легко изменить цвета темы, этого недостаточно, и вы должны применить классы / реквизиты (компоненты стиля), чтобы получить требуемый дизайн.

Шаблон проектирования Atomi c в React работает достаточно хорошо, пока вы не захотите добавить классы / реквизиты модификаторов во вложенные компоненты.

Например, скажем, у нас есть следующее:

Атомы : Кнопка & Вход

Молекул : Поиск - содержит Кнопка и Ввод

Организмы : Заголовок - содержит Поиск и другие молекулы

Шаблоны : Home - содержит Заголовок и другие Организмы

Я сохранил простой пример, но, надеюсь, идея пришла. Если в рамках дизайна мне нужно сделать кнопку вторичной стилизованной кнопкой для клиента b (потому что это наиболее подходящий стиль для брендинга этих клиентов), как мне установить этот модификатор следующим образом? это класс CSS или реквизит, когда у меня есть доступ только к шаблону Home ? Даже если бы мы использовали реквизит, у вас все равно была бы проблема получения доступа к кнопке , чтобы иметь возможность применить эту реквизит. На мой взгляд, это вопрос композиции, и я не могу найти для него хорошего решения.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...