redux-fluent playground

node v9.11.2
version: 3.0.0
endpointsharetweet
const { createAction, createReducer, createCombinableReducers } = require("redux-fluent"); const { createStore, combineReducers } = require('redux'); const addTodo = createAction('@@todos | add'); const editTodo = createAction('@@todos/:id | edit'); const todos = createReducer('@@todos') .case(addTodo) .then((state, { payload }) => state.concat(payload)) .case(editTodo) .then((state, { payload }) => state.map(todo => ( todo.id === payload.id ? Object.assign({}, todo, payload) : todo ))) .default(() => []); const reducers = combineReducers( createCombinableReducers(todos) ); const store = createStore(reducers); const getTodos = () => store.getState()[todos.domain][0]; store.dispatch( addTodo({ id: 1, title: 'Walk Gipsy', status: 'pending', }) ); console.log('State 1', getTodos()); store.dispatch( editTodo({ id: 1, title: 'Walk Gipsy', status: 'done', }) ); console.log('State 2', getTodos());
Loading…

no comments

    sign in to comment