數據流是什么?為什么要用數據流
- 數據流是我們的行為與響應的抽象
- 使用數據流幫助我們明確了解行為對應的響應【幫助我們更好的處理交互,讓狀態變得可預測】
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生成 | 手寫 |