Преобразование событий в действия Redux - PullRequest
0 голосов
/ 08 апреля 2019

В настоящее время я работаю над проектом, использующим события для обновления других компонентов, которые прослушивают эти события, и пытаюсь преобразовать эти события в действия Redux.

Пример, когда при входе пользователя в систему присутствуют компоненты, прослушивающиеЭто событие и вызов API для обновления его состояния. События запускались в зависимости от того, существует компонент или нет в Redux. Я должен проверить, изменился ли реквизит или нет внутри компонента, используя componentWillupdate, и оттуда я вызываюAPI.

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

1 Ответ

1 голос
/ 08 апреля 2019

Я бы реорганизовал код, удаляющий шаблон событий emit / listen для чего-то более близкого к архитектуре Redux.

Компоненты, генерирующие события, должны вызывать создателей действий. Эти создатели действий могут вызывать REST API или выполнять другие асинхронные операции (используя, например, redux-thunk ) и генерировать ноль, одно или несколько действий для обновления состояния Redux.

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

...