Skip to content
This repository has been archived by the owner on Dec 13, 2018. It is now read-only.

stefanmirck/create-reducers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 

Repository files navigation

create-reducer-map

A tiny utility to create reducer maps for Redux that follows the priciples of Flux Standard Action (FSA) and will enable you to handle errors as a first class concept. No need to define separate action types like SOME_ACTION_SUCCESS and SOME_ACTION_ERROR, but instead use FSA actions to represent errors is a simple and straightforward manner.

Example

import createReducer from 'create-reducer-map';
import { SOME_ACTION, ANOTHER_ACTION } from 'path/to/actionHandlers';

const initialState = {};

export default createReducer(initialState, {
  [SOME_ACTION]: {
    // Handles a basic FSA action.
    next: (state, payload, meta) => state,
    // Handles an FSA action that represents an error.
    throw: (state, payload, meta) => state,
  },
  // Handles any FSA action.
  [ANOTHER_ACTION]: (state, payload, meta) => state
});

// Basic FSA action
{
  type: SOME_ACTION,
  payload: {
    text: 'Do something...'
  }
  meta: {
    optional: 'Something else...'
  }
}

// FSA action representing an error
{
  type: SOME_ACTION,
  payload: new Error(),
  error: true
}

About

A tiny utility to create reducer maps for Redux.

Resources

License

Stars

Watchers

Forks

Packages

No packages published