首页 > 技术文章 > redux

suixinYB 2019-02-11 14:58 原文

redux 是什么?

简单的理解, redux 是管理react state的工具(本文redux只用于react,不考虑其他框架)

为什么需要 redux ?

react 中的state在简单的应用逻辑上还比较容易处理,但是对于过于复杂的应用,数据向下传递的次数多时就很费脑子了,容易出错,修改也不容易,尤其在react的【状态提升】问题比较大

redux 把state统一管理,你可以想象它把所有的state放在了一起,组成一个全局的普通对象(state),当你需要其中的值时,通过key获取即可,比较特别的是当需要更新值时,你必须通过返回一个新的state以覆盖原来的值。

redux 的三个部分

1. reducer => 创建并更新state

reducer 是个返回state的函数,由它更新state

2. action => 要更新的数据

action 是一个对象,里面存的是要更新的数据,当然你需要指定key去更新哪部分数据

3. store => 数据库,里面放着state,这部分是核心

store 是一个 redux 根据reducer生产的数据库对象,主要用来存放数据

简单理解三者的关系:

1. 通过多个reducer实例化store,并在store里产生初始的state

2. 需要更新state时,调用store的方法传入action即可完成数据更新

推荐阅读