码迷,mamicode.com
首页 > 其他好文 > 详细

redux示例

时间:2018-05-04 01:45:10      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:xtend   item   test   doc   状态   efault   dex   creat   creates   

import React from react;
import ReactDom from react-dom;
import {createStore} from redux; //解构一个createStore 创建状态对象

//默认状态 state
const defaultState={
  arr:[qq,bmw7],
};

//创建reducer 纯函数 ,必须要有返回值(state)
let reducer=(state=defaultState,action)=>{
  let {type,payload}=action;
  switch (type){
    case ADD_ITEM:
      // state.arr.push(payload) //直接修改state
      return Object.assign({},state,{
        arr: state.arr.concat(payload)
      });
      break;
    default:
      return state;
  }
};

//创建store实例对象
let store = createStore(reducer,defaultState);



//创建ToDoList组件
class List extends React.Component{
  render(){
    let arr=this.props.store.getState().arr;
    return (
      <div title="ToDoList">
        <ul>
          {
            arr.map(function(val,index){
              return <li key={index}>{val}</li>
            })
          }
        </ul>
      </div>
    );
  }
}

ReactDom.render(
  <List store={store}></List>,
  document.querySelector(#app)
);

 

redux示例

标签:xtend   item   test   doc   状态   efault   dex   creat   creates   

原文地址:https://www.cnblogs.com/LLLLily/p/8988204.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!