У меня есть приложение, в котором у меня есть администратор и пользовательские актеры. И пользователь, и администратор могут видеть список одних и тех же компонентов, но у администратора также есть дополнительные возможности по отношению к этим компонентам, такие как редактирование и т. д. Как лучше всего реализовать это? Должен ли я использовать один компонент для обоих участников с условием JSX, который решит, показывать ли дополнительные теги html, или лучше создать отдельный компонент для администратора? Я использую React Router.
Я бы лично создал два компонента, поскольку вам может потребоваться добавить дополнительные действия для пользователей и администраторов. Наличие двух отдельных компонентов инкапсулирует группы кнопок и устраняет связь между тем, какие кнопки отображать и какую группу кнопок должна отображать страница. Это также делает рендеринг более эффективным, поскольку теперь React не нужно повторно рендерить кнопки каждый раз, когда ваше состояние изменяется - до тех пор, пока свойства компонента вашей группы кнопок не меняются.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Если различия в элементах между пользователями и администраторами относительно невелики, я думаю, что условные выражения - лучший вариант.