【React Hooks】useReducer()

useReducer 的三个参数是可选的,默认就是initialState,如果在调用的时候传递第三个参数那么他就会改变为你传递的参数,实际开发不建议这样写。会增加代码的不可读性。

使用方法:

 必须将 useReducer 的第一个参数(函数)写在定义 hook 的上方。

第一个参数 state 就是你定义的数据。action 是你将来调用 dispatchData 来告诉它你要如何操作数据。

比如我要往数组中增加一个元素,我就可以这样写 

switch 语句我判断 type 传递的值是不是 AddItem 如果是的话我就执行对应的方法,并且把 data 作为新加入的元素。 

那么删除也是同理:

调用 dispatchData 传入 type 为 DeleteItem 最后在 switch 中判断走逻辑方法。 

时小记,终有成。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/255451.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

分享一个基础面试题---手写call

分享一个基础面试题---手写call 手写call笔记第一步第二步第三步 手写call笔记 call():在使用一个指定的this值和若干个指定的参数值的前提下调用某个函数或方法。 let foo {value:1 }; function bar(){console.log(this.value); } bar.call(foo);//1注意两点&…

微信小程序开发之原生小程序开发和uniapp开发的区别,两种开发方式语法上的区别

目前小程序开发有两种形式,分别是原生小程序开发和使用uniapp开发, uniapp和小程序原生开发都有各自的优缺点,开发者可以根据具体需求选择合适的开发方式。 一、两者区别如下: 编程语言:uniapp使用Vue语法编写应用程序…

内测分发平台支持应用的异地容灾的重要性

大家好,我是咕噜-凯撒,随着网络社会的发展,人们对于应用程序的依赖程度越来越高。无论是企业用户还是个人用户,都希望能够随时随地访问到需要使用的应用。所以对于内测分发平台来说保证应用的连续性和可靠性是非常的关键。内侧分发…

惠普台式机如何关闭UEFI

惠普台式机如何关闭UEFI 1、开机一直按按ESC,出现以下界面后,再按F10进入BIOS。 2.选择安全–>安全引导配置–>按F10接受 3.把旧支持 启用,安全引导 禁用 按F10接受 4.保存并退出更改 5.重启后看一下引导顺序,如果旧引导源已…

[MySQL] MySQL中的内置函数

本篇文章主要是对MySQL中常见的内置函数进行了详细解释。例如有日期类函数、字符串类函数、数学类函数等等。希望本篇文章会对你有所帮助。 文章目录 一、日期类函数 1、1 使用详解 1、2 实例演示 二、字符串函数 2、1 使用详解 2、2 实例演示 三、数学函数 四、其他函数 &…

Java 实现TCP一对一聊天,UDP协议实现群聊

用TCP编程实现一对一式聊天,并用多线程解决了处于同一线程中的问题。 客户端代码:mport java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; import java.ut…

python深浅拷贝

【 一 】Python 深拷贝和浅拷贝概念理解 个人见解: 浅拷贝,指的是重新分配一块内存,创建一个新的对象,但里面的元素是原对象中各个子对象的引用。 深拷贝,是指重新分配一块内存,创建一个新的对象&…

Axure动态面板控制

首先创建一个项目,拖拽几个矩形喝一个动态面板 然后双击动态面板添加状态state1,state2,state3 然后分别在state1,state2,state3编辑导航对应的内容。 接下来就是添加交互事件,将不同导航对应不同的state. 点击“交互”->鼠标点击->进入交互编辑…

数组常用方法

1、filter 筛选 筛选数组中带有某个id的对象 let list[{id:1,name:111},{id:2,name:222},{id:3,name:333},]; let alist.filter((item)>{return item.id1 }); console.log(a)2、findIndex var idx list.findIndex((item) > {return item 2;});返回的idx是该元素在数组…

Vellum —— Vellum Solver

目录 Solver Collision Forces Advanced Secondary Constraint Pass Multi-Pass Solve Motion Sleeping Grain Collisions Fluids Minimal Solver Vellum Solver SOP是DOP的封装,以简化vellum的解算;第一个端口是geometry,第二个…

软件系统应用开发安全指南

2.1.应用系统架构安全设计要求 2.2.应用系统软件功能安全设计要求 2.3.应用系统存储安全设计要求 2.4.应用系统通讯安全设计要求 2.5.应用系统数据库安全设计要求 2.6.应用系统数据安全设计要求 全资料获取进主页。

Java多线程:代码不只是在‘Hello World‘

Java线程好书推荐 概述01 多线程对于Java的意义02 为什么Java工程师必须掌握多线程03 Java多线程使用方式04 如何学好Java多线程写在末尾: 主页传送门:📀 传送 概述 摘要:互联网的每一个角落,无论是大型电商平台的秒杀…