为什么项目不使用Redux
# 为什么不用Redux
在React项目中,往往都配合Redux,但是,换了公司后,发现新公司的项目居然没有使用Redux,我意识到自己从来没有想过为什么项目中要用Redux......
# Redux的由来
最开始React中是流行是使用Flux处理数据,但是Flux基本上都是需要手动实现,于是便产生了Redux。
# Redux的思想
核心思想:
- 单一数据源
- 状态是只读的
- 纯函数
基本方法: Redux包含createStore、combineReducer、dispatch、getState、subscribe等方法
数据流向: UI层提前subscribe更新UI的订阅事件 UI层dispatch一个action action经过Store传递到Reducer Reducer修改Store中的数据并emit订阅事件 订阅的事件通过getState获取Store中的数据并执行订阅事件更新UI层
# Redux的使用场景
1、中大型项目
2、大多数页面都要用到公共信息
3、一个页面存在多个请求
4、组件间期望通过非组件的形式通信
# 为什么不用Redux
1、小型项目
2、首页的数据每次都需要刷新
3、存在高度复用页面(如:详情页、结果页)
4、多源多请求复用率很低的数据
编辑 (opens new window)
上次更新: 2021/07/19, 02:17:53