Skip to content

Instantly share code, notes, and snippets.

@dabit3
Created February 18, 2017 18:39
Show Gist options
  • Save dabit3/ff77d97b35667411e0ef16c802219ac0 to your computer and use it in GitHub Desktop.
Save dabit3/ff77d97b35667411e0ef16c802219ac0 to your computer and use it in GitHub Desktop.
Medium - redux4ways - dataReducer.js
import { FETCHING_DATA, FETCHING_DATA_SUCCESS, FETCHING_DATA_FAILURE } from '../constants'
const initialState = {
data: [],
dataFetched: false,
isFetching: false,
error: false
}
export default function dataReducer (state = initialState, action) {
switch (action.type) {
case FETCHING_DATA:
return {
...state,
data: [],
isFetching: true
}
case FETCHING_DATA_SUCCESS:
return {
...state,
isFetching: false,
data: action.data
}
case FETCHING_DATA_FAILURE:
return {
...state,
isFetching: false,
error: true
}
default:
return state
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment