为什么项目不使用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、多源多请求复用率很低的数据


文章作者: hn-failte
文章链接: https://failte.cn
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 hn-failte !
评论
 上一篇
JavaScript之函数尾调用与函数尾递归 JavaScript之函数尾调用与函数尾递归
函数尾调用与函数尾递归 偶然重新学习ES6,发现原来在函数方面还有添加尾调用这个特性,尾调用可以减少一次函数调用帧的生成,而众所周知函数递归存在一个内存消耗的问题,如果把尾调用加入到递归中会怎么样呢… 尾调用 函数调用会在内存形成一个调用帧
2020-03-21
下一篇 
中高级前端面试记录 中高级前端面试记录
中高级前端面试记录 2020年3月参加面试中高级前端面试,记录了一些笔试题和面试题供参考 笔试题 1、请写出你知道http状态码及其含义 2、假如移动端设备的尺寸是640px要实现每1rem=16px怎么实现? 3、请使用css画出梯形 4
2020-03-04
  目录