前端 React useState 数组或对象改变后页面没有更新渲染解决

目录

一、问题参数原因

二、解决方案


一、问题参数原因

当数组或对象的原本地址没有发生改变时,页面不会检测到数据更新,下面是有问题的写法:

javascript 复制代码
 const [care, setCare] = useState<boolean[]>([])
 care[index] = true
 setCare(care)  //这种写法的源地址不会发生变化,导致页面不能检测到地址变化

二、解决方案

可以通过解构数组或对象的形式来更新数据地址:

javascript 复制代码
care[index] = true
setCare([...care])  //解构重构后地址刷新,页面渲染刷新,对象类型也类似

总结到此!

相关推荐
v***913018 小时前
Spring+Quartz实现定时任务的配置方法
android·前端·后端
Irene199118 小时前
JavaScript 常见类数组对象对比(附:具有默认迭代器的数据类型详解)
javascript·类数组对象
charlie11451419118 小时前
面向C++程序员的JavaScript 语法实战学习4
开发语言·前端·javascript·学习·函数
万少18 小时前
上架元服务-味寻纪 技术分享
前端·harmonyos
想不明白的过度思考者19 小时前
Spring Web MVC从入门到实战
java·前端·spring·mvc
郭小铭19 小时前
React Suite v6:面向现代化的稳健升级
react.js·前端框架·github
AAA简单玩转程序设计19 小时前
C++进阶小技巧:让代码从"能用"变"优雅"
前端·c++
子洋19 小时前
群晖 DSM 更新后 Cloudflare DDNS 失效的排查记录
前端·后端·dns
一颗烂土豆19 小时前
告别 Vue 多分辨率适配烦恼:vfit 让元素定位 “丝滑” 跨设备
前端·vue.js