Redux总结1:Redux基础

本文介绍了Redux的基本原理,包括其作为状态容器的角色、与React的关系、以及action、reducer和store等核心组件的工作流程。

1.Redux 是一个状态容器
Redux 就像是作者自己的介绍,它不会为你提供任何的东西,它不会告诉你如何做路由,它只专注于应用程序状态,是一个 JavasSript 的状态容器,所有的状态的变化都是当前状态和 Action 共同的作用结果。 对于view来说,不用关心数据是怎样变化,只需要在 view 层面等待 store 通知自己数据发生变化,然后把数据渲染成页面即可。

2.Redux 和 React 之间没有关系
Redux 和 React 之间没有关系。Redux 支持 React、Angular、Ember、jQuery 甚至纯 JavaScript。 尽管如此,Redux 还是和 React 和 Deku 这类框架搭配起来用最好,因为这类框架允许你以 state 函数的形式来描述界面,Redux 通过 action 的形式来发起 state 变化。

3.Redux中的action、reducer、store三者之间的概念
应用中所有的 state 都以一个对象树的形式储存在一个单一的 store 中 。
惟一 改变 state 的办法是触发 action ,一个描述发生什么的对象。
为了 描述 action 如何改变 state 树,你需要编写 reducers 。

4.最后的概念总结
1.store 由 Redux 的 createStore(reducer) 生成
2.state 通过 store.getState() 获取,本质上一般是一个存储着整个应用状态的对象
3.action 本质上是一个包含 type 属性的普通对象,由 Action Creator (函数) 产生
4.改变 state 必须 dispatch 一个 action
5.reducer 本质上是根据 action.type 来更新 state 并返回 nextState 的函数
6.reducer 必须返回值,否则 nextState 即为 undefined,
实际上,state 就是所有 reducer 返回值的汇总(本教程只有一个 reducer,主要是应用场景比较简单)

示意图

用户产生:
这里写图片描述
action–>store.dispatch(action)–>reducer(state,action)–>store.getState();
个人理解为:创建保存有各种状态state的对象–>触发状态state的改变–>reducer负责更新并返回一个新的state–>获取新的整个state

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值