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

目录

一、问题参数原因

二、解决方案


一、问题参数原因

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

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

二、解决方案

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

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

总结到此!

相关推荐
GDAL几秒前
CSS重置样式表(Reset CSS
前端·css
SpringLament3 分钟前
TanStack Virtual 源码解析:定高/不定高虚拟列表实现原理以及框架无关设计
前端·javascript
猪猪拆迁队4 分钟前
高性能 Package构建系统设计与实现
前端·后端·node.js
用户14436183400975 分钟前
你不知道的JS-上(五)
javascript·程序员
UIUV7 分钟前
JavaScript中instanceof运算符的原理与实现
前端·javascript·代码规范
前端fighter8 分钟前
全栈项目:闲置二手交易系统(一)
前端·vue.js·后端
飞行增长手记14 分钟前
IP协议从跨境到物联网的场景化应用
服务器·前端·网络·安全
我叫张小白。16 分钟前
Vue3 插槽:组件内容分发的灵活机制
前端·javascript·vue.js·前端框架·vue3
Lovely_Ruby23 分钟前
前端er Go-Frame 的学习笔记:实现 to-do 功能(一)
前端·后端
脾气有点小暴29 分钟前
uniapp通用递进式步骤组件
前端·javascript·vue.js·uni-app·uniapp