npm.io
1.0.1 • Published 8 years ago

redux-reducer-generator

Licence
MIT
Version
1.0.1
Deps
0
Size
5 kB
Vulns
0
Weekly
0

redux-reducer-generator

Build Status Coverage Status Maintainability

how to install

$ npm install --save redux-reducer-generator

how to use it

The goal of this package is to shorten and lean the switch statement for redux reducers, replacing it with a map between action types and methods that handles those actions.


import reducer from "redux-reducer-generator"
// or var reducer = require("redux-reducer-generator")

const initialState = {
  loading: false,
  errors: false
}

const SHOW_LOADER = "SHOW_LOADER"
const HIDE_LOADER = "HIDE_LOADER"

const showLoader = (state, action) =>
  ({ ...state, loading: true })

const hideLoader = (state, action) =>
  ({ ...state, loading: false })

const map = {
  [SHOW_LOADER]: showLoader,
  [HIDE_LOADER]: hideLoader
}

const loadingReducer = reducer(initialState, map)