Следует ли вам когда-либо использовать this.setState () при использовании redux?

67

Если вы используете this.setState() при использовании сокращения? Или вы всегда должны отправлять действия и полагаться на реквизиты?

  • 0
    Нет ничего плохого в том, чтобы иметь некоторые компоненты с состоянием.
  • 2
    Это полностью зависит от того, где используется государство. Думайте о редукционных магазинах как о глобальных. Все, что не должно быть глобальным, может оставаться частным для компонента и его дочерних элементов.
Теги:
redux
flux

1 ответ

93
Лучший ответ

Явное использование setState будет для компонентов пользовательского интерфейса, которые имеют локальное состояние отображения, но не имеют отношения к глобальному приложению. Например, логическое значение, представляющее, активно ли отображаемое конкретное выпадающее меню, не обязательно должно находиться в глобальном состоянии, поэтому его удобнее управлять состоянием компонента меню.

Другие примеры могут включать в себя состояние свернуть/развернуть линии на аккордеонном дисплее иерархии. Или, возможно, текущую выбранную вкладку в навигации по вкладкам. Однако в обоих этих примерах вы все равно можете обрабатывать состояние пользовательского интерфейса глобально. Например, это было бы необходимо, если бы вы хотели сохранить состояние expand/collapse в хранилище браузера, чтобы оно сохранялось при обновлении страницы.

На практике обычно проще реализовать такие элементы пользовательского интерфейса с локальным состоянием и реорганизовать их в глобальное состояние по мере необходимости.

  • 20
    Чтобы продолжить, в соответствующей статье FAQ Redux подчеркивается, что использование setState вполне нормально : redux.js.org/docs/faq/…
  • 2
    Если вы собираетесь передать или использовать рендеринг на стороне сервера, я думаю, что вы всегда должны использовать Redux

Ещё вопросы

Сообщество Overcoder
Наверх
Меню