Skip to content
Go to file
Cannot retrieve contributors at this time
77 lines (57 sloc) 2.7 KB

Redux Promise Middleware

Build Status npm downloads

Redux Promise Middleware enables simple, yet robust handling of async action creators in Redux.

const asyncAction = () => ({
  type: 'PROMISE',
  payload: new Promise(...),

Given a single action with an async payload, the middleware transforms the action to a separate pending action and a separate fulfilled/rejected action, representing the states of the async action.

The middleware can be combined with Redux Thunk to chain action creators.

const secondAction = (data) => ({
  type: 'SECOND',
  payload: {...},

const firstAction = () => {
  return (dispatch) => {
    const response = dispatch({
      type: 'FIRST',
      payload: new Promise(...),

    response.then((data) => {

Documentation and Help

Heads Up: Version 6 includes some breaking changes. Check the upgrading guide for help.


For bug reports and feature requests, file an issue on GitHub.

For help, ask a question on StackOverflow.


For older versions:


Please reach out to us if you have any questions or comments.

Patrick Burtchaell (pburtchaell):

Thomas Hudspith-Tatham (tomatau):


Code licensed with the MIT License (MIT).

Documentation licensed with the CC BY-NC License.

You can’t perform that action at this time.