All Projects โ†’ caiogondim โ†’ Redux Whenever.js

caiogondim / Redux Whenever.js

๐Ÿ•Ÿ Redux store subscriber for specific state change

Programming Languages

javascript
184084 projects - #8 most used programming language

redux-whenever

Travis CI Codecov

Subscribe to a state subtree (or leaf) and run callbacks whenever it evaluates to a given value.

Installation

npm install --save redux-whenever

Usage

Adding subscriber

const whenever = require('redux-whenever')
const redux = require('redux')

// Pass `whenever` as an enhancer
const store = redux.createStore(reducer, whenever)

// Pass the state selector you are interested in as a string.
// `callback` will execute only when `player.isReady` becames `true`
store.whenever('player.isReady', true, (curState, prevState) => {
  // Your magic here
})

Removing subscriber

const unsubscribe = store.whenever('player.isReady', true, callback)
unsubscribe() // Removes previously added listener

API

const unsubscribe = store.whenever(selector, assertion, callback)

Returns a function that, if called, removes the added subscriber.

selector

  • type: String|Function

Should return a piece of the state tree

assertion

  • type: String|Number|Object|Function

If a function, it will be executed. If not, it's equality will be compared against current state.

callback

  • type: Function

Credits

  • Icon by Scott Lewis from the Noun Project

caiogondim.com  ยท  GitHub @caiogondim  ยท  Twitter @caio_gondim

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].