Я создаю приложение с помощью React и Redux, и у меня есть вопрос о дизайне.
В моем приложении используется React Router. Он имеет панель навигации (слева), которая отображает маршруты из файла конфигурации React Router с меню Material Design.
Я бы знал, как лучше всего обрабатывать статические данные этого компонента LeftNav
.
Эти данные имеют следующий вид:
const menuItems = [
{
icon: 'home',
label: 'Home',
url: '/home',
withDivider: true,
access: 'all',
},
{
icon: 'settings',
label: 'Settings',
url: '/settings',
access: 'admin',
},
{
icon: 'power_settings_new',
label: 'Log Out',
url: '/logout',
access: 'user',
},
];
В соответствии с предложением по умным и глупым компонентам, мой LeftNav
компонент глуп. и без гражданства. У меня также есть интеллектуальный компонент (сейчас это просто мой AppContainer
), который отображает компонент LeftNav
и предоставляет ему массив menuItems через реквизит.
Интересно, должен ли я включать эти данные только для чтения в свое дерево состояний избыточности. В этом случае у меня был бы такой постоянный редуктор:
export default handleActions({}, [
{
icon: 'home',
label: 'Home',
url: '/home',
withDivider: true,
access: 'all',
},
{
icon: 'settings',
label: 'Settings',
url: '/settings',
access: 'admin',
},
{
icon: 'power_settings_new',
label: 'Log Out',
url: '/logout',
access: 'user',
},
]);
Хорошо ли иметь постоянный редьюсер без обработчика действий? Если нет, что мне делать?
Заранее спасибо.