我们利用react可以创建我们的状态树,这个树理解为一个对象,下面可以存放状态,这些状态是使用reducer生成的,一个reducer就是一个方法,默认的返回值就是我们这个树对应设置状态的默认值,reducer里面可以写逻辑,用来处理action的响应,这个reducer方法第一个参数就是树使用这个reducer设置的状态的对应值,然后根据action的type不用修改处理返回即可!
然后利用react提供的createStore方法执行这个reducer即可,为了逻辑清晰可以把reducer通过combineReducers方法合并。
我们的组件使用状态树的某个状态就利用获取方法即可,修改状态使用dispatch即可!
react-redux 是一个更好的链接react和redux的工具,我们生成状态树以后,利用react-redux提供的Provider组件包裹我们组件即可,这样可以把整个状态树应用到所有组件中。
react-redux还提供了connect方法,用来封装我们的组件,参数是定义的方法,第一个方法可以自动获取状态的,第二个可以获取自动dispatch,调用之后我们把组建做参数传递即可,组件的this.props.xx就会拿到第一个方法和第二个方法中return的状态和dispatch处理!