Здравствуйте, peer, Вы писали:
P>Привет.
P>Дошел до этапа проектирования компонентов в реакте и встал вопрос как делить компоненты по ролям.
P>Есть 3 роли в системе.
P>Общий вид одинаковый для всех: слева меню, справа отображение либо грид либо таблица.
P>Просто у админа в меню больше элементов, а справа всё доступно.
P>А у простого сотрудника в меню вместо 5 элементов меню всего один, а справа грид и таблица только на чтение, хотя у админа в этой таблице и гриде есть доп.кнопки.
P>Вопрос: как делить на компоненты? Делать один компонент Меню для всех ролей и его уже наполнять в зависимости от роли или же сделать 3 разных компонента для каждой роли со статическим наполнением? Для таблицы и грида тоже визуально выглядят одинаково, просто у админа есть доп.кнопки на которые открываются доп.окна.
Интерфейс лучше всего проектировать по функционалу, а не по ролям. Т.е. есть например вкладка "Администрирование", кладка "Должники" и т.д. а доступность, видимость и активность элементов определять на основе прав пользователя, если предполагается, что права пользователя могут настраиваться по желанию. Так что первый вариант лучше.
P.S. React — среди spа-фреймворков, это как js среди языков.