UNPKG

new-react

Version:

react + es6 + less + webpack + redux

36 lines (33 loc) 840 B
const todo = (state = [], action) => { switch (action.type) { case 'ADD_TODO': return { id: action.id, text: action.text, completed: false, } case 'TOGGLE_TODO': if (state.id !== action.id) { return state } return Object.assign({}, state, { completed: !state.completed, }) default: return state } } const todos = (state = [], action) => { switch (action.type) { case 'ADD_TODO': return [ ...state, todo(undefined, action) ] case 'TOGGLE_TODO': return state.map(t => todo(t, action)) default: return state } } export default todos