Два других комментария по крайней мере частично неверны.
Отправка действия по умолчанию 100% синхронна, при условии, что промежуточное ПО не перехватывает действие и не задерживает его. Как только dispatch()
возвращается, состояние хранилища было обновлено. Пример @ageoff верен в том смысле, что вы можете снова вызвать getState()
в thunk после отправки и увидеть обновленное состояние.
В вашем примере кода есть две проблемы.
Во-первых, после отправки React не имел возможности повторно выполнить рендеринг, поэтому реквизиты компонента не изменились.
Во-вторых, ваш редуктор должен возвращать новый объект в ответ на действие, поэтому существующий объект user
будет , а не обновленной ссылкой. На самом деле, если вы правильно делаете неизменные обновления, этот старый объект user
никогда не изменится . Когда компонент повторно рендерится, он должен получить новое значение для props.user
с изменениями.