Является ли использование состояния компонента в Redux антипаттерном?

В настоящее время у меня есть настройка магазина. Различные вещи вызывают события для обновления хранилища, которое обновляет реквизиты ниже по течению. Это очень удобно, когда вы запускаете что-то для обновления нескольких компонентов.

Является ли анти-шаблоном использование состояния для вещей, о которых другие компоненты не заботятся?

У меня в основном есть компонент, который является страницей формы. Редактирование формы обновляет состояние (т.е. выбор одной опции приводит к изменению других опций). Я полагаю, что когда пользователь нажимает «Сохранить», я запускаю событие для сохранения новых данных. При нажатии кнопки «Отмена» вы просто вернетесь на другую страницу, поэтому возврат позже просто заполнит состояние магазина.

Имеет ли это смысл?


person Dave Stein    schedule 16.04.2016    source источник
comment
Что заставляет вас думать, что это может быть анти-шаблон?   -  person bugnumber9    schedule 16.04.2016
comment
Потому что все примеры показывают состояние карты для реквизита и т. д., но никогда не показывают примеры использования обоих в тандеме.   -  person Dave Stein    schedule 17.04.2016


Ответы (1)


Использование внутреннего состояния прекрасно (и рекомендуется!) в простом поведении, подобном тому, что вы описываете. Такие вещи, как состояние модального окна (открыто/закрыто), флажки и другие мелкие вещи, подобные этому, прекрасно содержатся в состоянии React.

Помните, что Redux наиболее полезен при обработке глобального состояния приложения. Пытаясь решить, где сохранить состояние, попробуйте ответить на вопрос «Будет ли какая-либо другая часть приложения вообще заботиться об изменении этого?» Если это так, используйте магазин Redux. В противном случае перейдите к внутреннему состоянию.

person ZekeDroid    schedule 16.04.2016