merge-reducers

1.0.1 • Public • Published

mergeReducers

A function that merges two or more reducers in one.

Installation

npm

npm install merge-reducers --save

yarn

yarn add merge-reducers

Usage

Just call the function with your reducers as arguments.

mergeReducers(reducer1, reducer2, ...)

Quick Example

import mergeReducers from 'merge-reducers';
 
const myReducer = mergeReducers(reducer1, reducer2, reducer3);

Minimal Working Example

const initialState = { counter: 0 }
 
const reducer1 =
  (state, action) => {
    switch (action) {
      case 'INCREMENT':
        return { counter: state.counter + 1 }
      default:
        return state
    }
  }
 
const reducer2 =
  (state, action) => {
    switch (action) {
      case 'DECREMENT':
        return { counter: state.counter - 1 }
      default:
        return state
    }
  }
 
const mergeReducers = require('merge-reducers')
 
const mainReducer = mergeReducers(reducer1, reducer2)
 
const incrementedState = mainReducer(initialState, 'INCREMENT')
const decrementedState = mainReducer(initialState, 'DECREMENT')
 
const assert = require('assert').strict
 
assert.deepStrictEqual(
  incrementedState,
  { counter: 1 },
  "counter didn't increase"
)
 
assert.deepStrictEqual(
  decrementedState,
  { counter: -1 },
  "counter didn't decrease"
)

Readme

Keywords

Package Sidebar

Install

npm i merge-reducers

Weekly Downloads

2

Version

1.0.1

License

MIT

Unpacked Size

2.15 kB

Total Files

3

Last publish

Collaborators

  • simone