Skip to content

About

React Hook useReducer with cancelable dispatch of thunks

Topics

Resources

Stars

26 stars

Watchers

1 watching

Forks

Repository files navigation

use-cancelable-thunk-reducer

Codecov Coverage Build Status dependencies

Custom implementation of react hook useReducer that will cancel all dispatched actions if the component is unmounted and allows to dispatch thunk actions (that will be canceled either).

demo-gif

Open on codesanbox.

Installation

yarn add use-cancelable-thunk-reducer

npm i use-cancelable-thunk-reducer

useCancelableThunkReducer

import useCancelableThunkReducer from 'use-cancelable-thunk-reducer';

const [state, dispatch] = useCancelableThunkReducer(
  reducer,
  initialState,
  callback,
  init
);

reducer

useReducer first argument.

initialState

useReducer second argument.

callback

default is undefined, if is a function, when some action is canceled it is called with the action argument: callback(action).

init

useReducer last argument.

Thunk action

The thunk actions receive (dispatch, getState) args.

const thunkAction = args => async (dispatch, getState) => {
  dispatch({type: ACTION_SENT});
  const state = getState();
  ...
}

About

React Hook useReducer with cancelable dispatch of thunks

Topics

Resources

Stars

26 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages