This package allows you to subscribe to changes in any part of Redux state.
npm install redux-subscriber --save
store.js
import {createStore} from 'redux';
import initSubscriber from 'redux-subscriber';
const store = createStore(...);
// "initSubscriber" returns "subscribe" function, so you can use it
const subscribe = initSubscriber(store);
somewhere-else.js
// or you can just import "subscribe" function from the package
import {subscribe} from 'redux-subscriber';
const unsubscribe = subscribe('user.messages.count', state => {
// do something
});
// if you want to stop listening to changes
unsubscribe();
- https://github.com/ivantsov/yandex-mail-notifier-chrome - real app that uses
redux-subscriber
initSubscriber(store)
(default export) - initialize redux-subscriber
, so after that you can use subscribe
method.
store
- instance of Redux store.
Returns subscribe
function.
key
- string which specified the part of state (e.g.user.message.count
) to listen to.callbackFunction
- function which will be called when the part of state has changed. New state is passed as a parameter.
Returns unsubscribe
function which can be called to unsubscribe from changes.