数据流是什么?为什么要用数据流
- 数据流是我们的行为与响应的抽象
- 使用数据流帮助我们明确了解行为对应的响应【帮助我们更好的处理交互,让状态变得可预测】
React与数据流的关系
- React是纯V层框架,需要数据流进行支撑
主流数据流框架/我们为什么使用Redux
- Flux / reFlux / Redux
- Flux--大 重
- Redux --简单/单一状态树 小
单项数据流
- MVC
- 数据--Model
- View--显示
- Controller--管理
简单介绍
- action
- 是行为的抽象
- 是普通JS对象
- 一般由方法生成
- 必须有一个type
- reducer
- 是响应的抽象
- 是纯方法
- 传入旧状态和action
- 返回新状态
- store
- action作用于store
- reducer根据store响应
- store是唯一的
- store包括了完整的state
- state完全可预测
- 组件
| | container | component |
| 目的 | 如何工作(数据获取,状态更新)| 如何显示(样式,布局) |
| 是否在Redux数据流中 | 是 | 否 |
| 读取数据 | 从Redux获取state | 从props获取数据 |
| 修改数据 | 向Redux派发actions | 从props调用回调函数 |
| 实现方式 | 由react-redux生成 | 手写 |