Redux Promise Middleware

Getting Started
Install with npm: npm i redux-promise-middleware -S
Usage
First, import the middleware and include it when creating the Redux store:
import promiseMiddleware from 'redux-promise-middleware';
export default createStore(reducers, {}, [
promiseMiddleware,
]);
To use the middleware, dispatch a promise as the payload
of the action and specify a types
array.
The pending action is dispatched immediately. The fulfilled action is dispatched only if the promise is resolved, e.g., if it was successful; and the rejected action is dispatched only if the promise is rejected, e.g., if an error occurred.
export function myAsyncActionCreator() {
return {
types: [
'ACTION_PENDING',
'ACTION_FULFILLED',
'ACTION_REJECTED'
],
payload: doSomethingAyncAndReturnPromise()
};
}
The middleware returns a FSA compliant action for both rejected and resolved/fulfilled promises. In the case of a rejected promise, an error
is returned.
Licensed MIT. Copyright 2015 Patrick Burtchaell.