redux的作用
Redux 主要分为三个部分 Action、Reducer、及 Store
action
- action用来传递操作 State 的信息,以 Javascript Plain Object 的形式存在,形如
|
|
type 属性是必要的,用来表达处理 state 数据的方式,其他属性任意,建议简单
但为了方便组织,可以创建函数来生产 action,即Action Creator
|
|
Reducer
- 处理action传达需要操作的信息
- 通过传入旧的 state 和指示操作的 action 来更新 state
Reducer 根据传入的 action.type 来匹配 case 进行不同的 state 更新
|
|
当 action.type变多时,可以按照功能拆分,在通过组合函数合并
|
|
Store
- 衔接action和reducer
Store 是单一的,维护着一个全局的 State,并且根据 Action 来进行事件分发处理 State,Store 是一个把 Action 和 Reducer 结合起来的对象。
生成store
|
|
store 对象可以简单的理解为如下形式
|
|
store.getState() 用来获取 state 数据。
store.subscribe(listener) 用于注册监听函数。每当 state 数据更新时,将会触发监听函数。
store.dispatch(action) 是用于将一个 action 对象发送给 reducer 进行处理
|
|
connect
- Connect 组件主要为 React 组件提供 store 中的部分 state 数据 及 dispatch 方法
通过import { connect } from ‘react-redux’将state的值和action绑定到组件的props上
|
|
saga
|
|