1 redux使用步骤
React仅仅是一个前端View框架库,可以看做是MVC里面的V。没有解决组件间通信,MVC分离,数据共享等问题。Redux的出现使得这些都不是问题。使用Redux也比较简单,步骤大概如下
- 编写React Component,这里不涉及Redux
- 编写reducer,它接收一个state和action,返回一个新的state
- createStore(reducer) 得到store对象,它是Redux的核心对象。包含的主要API如下
- getState(), 得到store中保存的state对象
- dispatch(action), 发送action消息给store,它会调用reducer更新state,并回调subscribe的监听器
- subcribe(listener), 注册监听器,dispatch触发时会回调
- 编写React Component中的事件回调,比如onClick。使用store.dispatch(action)发送消息,reducer此时会得到调用,更新state。
其中createStore(reducer)比较关键,下面来分析它的源码
2 createStore()源码分析