Extract Local State into Redux

Вы почти закончили! Напомним, что вы написали весь код Redux, чтобы Redux мог контролировать управление вашим приложением React messages. Теперь, когда Redux подключен, вам нужно извлечь управление состоянием из компонента Presentational и в Redux. В настоящее время вы подключены к Redux, но вы управляете состоянием локально в составе Presentational компонента.

В компоненте Presentational сначала удалите свойство messages в локальном state . Эти сообщения будут управляться Redux. Затем измените метод submitMessage() так, чтобы он отправил submitNewMessage() из this.props и передал текущее сообщение из локального state в качестве аргумента. Поскольку вы удалили messages из локального состояния, удалите свойство messages из вызова this.setState() здесь. Наконец, измените метод render() чтобы он отображал сообщения, полученные из props а не state . После внесения этих изменений приложение будет продолжать функционировать одинаково, за исключением того, что Redux управляет состоянием. В этом примере также показано, как компонент может иметь локальное state : ваш компонент по-прежнему отслеживает ввод пользователя локально в своем собственном state . Вы можете видеть, как Redux предоставляет полезную структуру управления государственными ресурсами поверх React. Вы достигли того же результата, используя сначала локальное состояние React, и это обычно возможно с помощью простых приложений. Однако, поскольку ваши приложения становятся все больше и сложнее, так же как и ваше управление состоянием, и это проблема, которую решает Redux.