标签:object OLE code port S3 opened gre -shared color
1. initial state
const initialState = { "recipes": [ { "name": "Omelette" }, { "name": "Waffle" } ], "ingredients": [ { "name": "Eggs", "quantity": 2, "measure": "large", "recipe": "Omelette" }, { "name": "Eggs", "quantity": 1, "measure": "large", "recipe": "Waffle" }, { "name": "Milk", "quantity": 1, "measure": "cups", "recipe": "Waffle" }, { "name": "Sugar", "quantity": 2, "measure": "tbsp", "recipe": "Waffle" } ] }
2. reducer
const reducer = (state, action) => { switch (action.type) { case ‘ADD_RECIPE‘: return Object.assign( {}, state, { recipes: state.recipes.concat({name : action.name}) }); return state; }
3. action
1) declare
const addRecipe_action = (name) => ({ type:‘ADD_RECIPE‘, name })
2) dispatch
store.dispatch(addRecipe_action(‘Xiaobin‘));
code:
import { createStore } from ‘redux‘; const reducer = (state, action) => { switch (action.type) { case ‘ADD_RECIPE‘: return Object.assign( {}, state, { recipes: state.recipes.concat({name : action.name}) }); case ‘ADD_INGREDIENT‘: return Object.assign( {}, state, { ingredients: state.ingredients.concat({ name : action.name, quantity: action.quantity, measure: action.measure, recipe: action.recipe }) }); } return state; } // https://s3.amazonaws.com/500tech-shared/db.json const initialState = { "recipes": [ { "name": "Omelette" }, { "name": "Waffle" } ], "ingredients": [ { "name": "Eggs", "quantity": 2, "measure": "large", "recipe": "Omelette" }, { "name": "Eggs", "quantity": 1, "measure": "large", "recipe": "Waffle" }, { "name": "Milk", "quantity": 1, "measure": "cups", "recipe": "Waffle" }, { "name": "Sugar", "quantity": 2, "measure": "tbsp", "recipe": "Waffle" } ] } const addRecipe_action = (name) => ({ type:‘ADD_RECIPE‘, name }) const store = createStore(reducer, initialState); console.log(store.getState()); //store.subscribe(()=>(console.log("store change"))); store.dispatch(addRecipe_action(‘Xiaobin‘)); store.dispatch({type:‘ADD_INGREDIENT‘, name: ‘Eggs‘, quantity: 2, measure: ‘large‘, recipe: ‘xiaobin‘}); console.log(store.getState());
标签:object OLE code port S3 opened gre -shared color
原文地址:https://www.cnblogs.com/xiaobin-hlj80/p/9223838.html