Is store.dispatch in Redux synchronous or asynchronous
JavascriptReactjsReduxSingle Page-ApplicationJavascript Problem Overview
I realize this is a basic question but I had no luck finding the answer elsewhere.
Is store.dispatch
synchronous or asynchronous in Redux
?
In case it is asynchronous is there a possibility to add a callback after the action has been propagated as it is possible with React
?
Javascript Solutions
Solution 1 - Javascript
AFAIK, dispatching action is synchronous. In case if you are willing to address the asynchronous call, you can use the thunk-middleware in redux, where dispatch is provided as a callback function which you can invoke as per your convenience. For more info, checkout this answer on SO by Author itself: https://stackoverflow.com/questions/35411423/how-to-dispatch-a-redux-action-with-a-timeout/35415559#35415559
Solution 2 - Javascript
Nobody knows better than the code itself. =) As you can see dispatch
is absolutely synchronous. The only warning here is that store enhancers
can (and do) substitute dispatch
method. For example, take a look at applyMiddleware
enhancer, it lets you jack middlewares in by replacing default dispatch
method with its own implementation. Though I never saw any Redux enhancer
which would actually remove synchronous nature of dispatch
.