redux-subscribe-action
Subscribe to dispatched redux actions
The motivation was to handle dispatched actions to dispatch other thanks to redux-thunk.
Installation
To install redux-subscribe-action
, run the following command:
npm install --save redux-subscribe-action
Or if you are using yarn:
yarn add redux-subscribe-action
Setup with redux
To enable redux-subscribe-action
, use applyMiddleware()
:
;;; // Note: this API requires redux@>=3.1.0const store = ;
Usage
subscribeBefore(listener)
Adds a listener. It will be called every time an action is dispatched before the state changed.
It takes a callback as argument and returns a function that unsubscribe the listener. The dispatched action is given to the callback.
Example:
; const unsubscribe = ; //... ;
subscribeAfter(listener)
Adds a listener. It will be called every time an action is dispatched after the state changed.
It takes a callback as argument and returns a function that unsubscribe the listener. The dispatched action is given to the callback.
Example:
; const unsubscribe = ; //... ;
subscribeActionBefore(action, listener)
Adds a listener. It will be called when the given action is dispatched before the state changed.
It takes an action type and a callback as arguments and returns a function that unsubscribe the listener. The dispatched action is given to the callback.
Example:
; const unsubscribe = ;// action.type === 'MY_ACTION_TYPE' //... ;
subscribeActionAfter(action, listener)
Adds a listener. It will be called when the given action is dispatched after the state changed.
It takes an action type and a callback as arguments and returns a function that unsubscribe the listener. The dispatched action is given to the callback.
Example:
; const unsubscribe = ;// action.type === 'MY_ACTION_TYPE' //... ;
listener
type
Typescript Listener type is defined with TypeScript as Listener
.
;
With Action
as redux Action type (import { Action } from 'redux'
).
Example:
;;
unsubscripe methods
The package exposes following unsubscribe methods:
-
unsubscribeBefore()
: unsubscribe all general before listeners -
unsubscribeActionsBefore()
: unsubscribe all before action listeners -
unsubscribeAfter()
: unsubscribe all general after listeners -
unsubscribeActionsAfter()
: unsubscribe all after action listeners -
unsubscribeAll()
: unsubscribe from every listener -
unsubscribeActionBefore(action: string)
: unsubscribe all before listeners corresponding to the passed action -
unsubscribeActionAfter(action: string)
: unsubscribe all after listeners corresponding to the passed action -
unsubscribeAction(action: string)
: unsubscribe all listeners corresponding to the passed action