Reducer整合器

在React的函数组件中,我们可以通过usestate()来创建state。这种创建state的方式会给我们返回两个东西state和setState()。state用来读取数据,而setstate()用来设置修改数据。但是这种方式也存在着一些不足,因为所有的修改state的方式都必须通过setstate()来进行,如果遇到一些复杂度比较高的state时,这种方式似乎就变得不是那么的优雅。

Reducer横空出世

为了解决复杂State带来的不便,Reakt为我们提供了一个新的使用state的方式。Reducer横空出世,reduce单词中文意味减少,而reducer我觉得可以翻译为"当你的state的过于复杂时,你就可以使用的可以对state进行整合的工具”。

当然这是个玩笑话,个人认为Reducer可以翻译为"整合器”,它的作用就是将那些和同一个state相关的所有函数都整合到一起,方便在组件中进行调用。它只适用于那些比较复杂的state,对于简单的state使用Reducer只能是徒增烦恼。

useReducer(reducer,initialArg, init)

参数:

1.reducer :整合函数:
对于我们当前state的所有操作都应该在该函数中定义该函数的返回值,会成为state的新值

reducer在执行时,会收到两个参数:
1.state当前最新的state
2.action它需要一个对象

2.initialArg : state的初始值

作用和useState()中的值是一样返回值:是一个数组

第一个参数,state 用来获取state的值

第二个参数,state修改的派发器。 通过派发器可以发送操作state的命令,具体的修改行为将会由另外一个函数(reducer)执行

例子:

在这里插入图片描述

一定要加return,否则输入错误的时候会导致state的丢失!!!!!!!!!!!!!!!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值