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

目录

一、问题参数原因

二、解决方案


一、问题参数原因

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

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

二、解决方案

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

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

总结到此!

相关推荐
shughui4 分钟前
APP、Web、H5、iOS与Android的区别及关系
android·前端·ios
Amumu121389 分钟前
React Router 6介绍
前端·react.js·前端框架
弓.长.15 分钟前
React Native 鸿蒙跨平台开发:实现一个模拟计算器
react native·react.js·harmonyos
南村群童欺我老无力.15 分钟前
Flutter 框架跨平台鸿蒙开发 - 打造表情包制作器应用
开发语言·javascript·flutter·华为·harmonyos
山峰哥19 分钟前
SQL调优实战:让查询效率飙升10倍的降本密码
服务器·前端·数据库·sql·编辑器·深度优先
摘星编程21 分钟前
React Native for OpenHarmony 实战:MediaPlayer 播放器详解
javascript·react native·react.js
TAEHENGV28 分钟前
React Native for OpenHarmony 实战:反应测试实现
javascript·react native·react.js
余生H33 分钟前
2026 年时间记录软件对比研究:时间线与「时光流」设计的产品分化
前端·软件工程·时间管理·时间记录
风叶悠然38 分钟前
vue3中数据的pinia的使用
前端·javascript·数据库
Jyywww1211 小时前
Uniapp+Vue3 使用父传子方法实现自定义tabBar
javascript·vue.js·uni-app