# reducer
Declares a section of state to be calculated via a "standard" reducer function - as is typical in Redux.
This API specifically exists to help with integrations against existing Redux based libraries, and to help with gradual migration from legacy Redux code.
For example redux-first-history (opens new window), requires you to attach a reducer that they provide to your store.
reducer((state = 1, action) => {
  switch (action.type) {
    case 'INCREMENT':
      state + 1;
    default:
      return state;
  }
});
# API
The reducer function is described below.
# Arguments
- reducer (Function, required) - The reducer function. It receives the following arguments. - state(Object, required)- The current value of the property that the reducer was attached to. 
- action(Object, required)- The action object, typically with the following shape. - type(string, required)- The name of the action. 
- payload(any)- Any payload that was provided to the action. 
 
 
# Example
import {
  createStore,
  reducer,
  useStoreState,
  useStoreDispatch,
} from 'easy-peasy';
const store = createStore({
  counter: reducer((state = 1, action) => {
    switch (action.type) {
      case 'INCREMENT':
        state + 1;
      default:
        return state;
    }
  }),
});
function Counter() {
  const count = useStoreState((state) => state.counter);
  const dispatch = useStoreDispatch();
  return (
    <button onClick={() => dispatch({ type: 'INCREMENT' })}>{count}</button>
  );
}