Je me rends compte que c'est une question fondamentale mais je n'ai pas eu la chance de trouver la réponse ailleurs.
Est-ce store.dispatch
synchrone ou asynchrone Redux
?
Dans le cas où il est asynchrone, est-il possible d'ajouter un rappel après que l'action a été propagée comme c'est possible avec React
?
getState()
) maismapStateToProps
pas. Il enthis.props.value
va de même pour l'ancienne valeur, tandis quegetState().value
la nouvelle est la nouvelle - codesandbox.io/s/reactredux-forked-0m5eo?file=/Page.jsRéponses:
AFAIK, l'action de répartition est synchrone. Dans le cas où vous êtes prêt à répondre à l'appel asynchrone, vous pouvez utiliser le thunk-middleware dans redux, où la répartition est fournie comme une fonction de rappel que vous pouvez appeler selon votre convenance. Pour plus d'informations, consultez cette réponse sur SO par l'auteur lui-même: Comment envoyer une action Redux avec un délai d'expiration?
la source
Personne ne sait mieux que le code lui-même . =) Comme vous pouvez le voir,
dispatch
c'est absolument synchrone. Le seul avertissement ici est que le magasinenhancers
peut (et fait) remplacer ladispatch
méthode. Par exemple, jetez un œil àapplyMiddleware
Enhancer , il vous permet de connecter des middlewares en remplaçant ladispatch
méthode par défaut par sa propre implémentation. Bien que je n'ai jamais vu de Reduxenhancer
qui supprimerait réellement la nature synchrone dedispatch
.la source
code itself
lien, ce qui serait des liens morts en raison de l'aspect «permalien» des commits.