Redux 數據流管理圖解
1.使用場景:
涉及多個頁面組件共享一個狀態時; Store 存放全局對象
- 某個組件的狀態,需要共享
- 某個狀態需要在任何地方都可以拿到
- 一個組件需要改變全局狀態
- 一個組件需要改變另一個組件的狀態
2. 無須使用Redux的場景
頁面組件內部狀態無須Redux,只需要局部state
缺點:
(1) 代碼耦合性高
(2) 繁瑣,需要不斷調用 this.setState()
(3) 要宏觀瞭解整個應用的狀態機必須 n 個文件交叉看,很累
優點:
(1) 狀態集中管理,reducer 中可以清晰地看到頁面狀態
(2) 便於調試
(3) 時光旅行 Undo/Redo