redux-middleware-oneshot

0.1.1 • Public • Published

redux-middleware-oneshot

license npm version npm downloads Code Climate build

Create Redux actions from arbitraty sources out of middlewares.

Installation

npm install --save redux-middleware-oneshot

Usage

// In this example, we want to create someAction in redux for every
// change-event emitted by someEventEmitter
import someEventEmitter from './someEventEmitter';
import someAction from './someAction';
 
// And for this we simply create a new oneShot middleware
import createOneShot from 'redux-middleware-oneshot';
const myMiddleware = createOneShot((dispatch) => {
    // This function is called exactly once as soon as the first action
    // runs through redux. Perfect moment to glue things together!
    someEventEmitter.addEventListener('change', (event) => {
        dispatch(someAction(event.value));
    });
});
 
// Everything else is straight forward Redux ...
import { createStore, applyMiddleware, combineReducers } from 'redux';
const createStoreWithMiddleware = applyMiddleware(myMiddleware)(createStore);
const store = createStoreWithMiddleware(/* reducer */);

Todo

  • Write tests for everything!

/redux-middleware-oneshot/

    Package Sidebar

    Install

    npm i redux-middleware-oneshot

    Weekly Downloads

    13

    Version

    0.1.1

    License

    MIT

    Last publish

    Collaborators

    • michaelcontento