当前位置: 首页 > news >正文

react性能优化之useRef和useState

一、两者的区别

1.更新机制不同

useState : 当值更新时会触发组件重新渲染

useRef : 更新值不会触发重新渲染

2.值的存储方式

useState : 返回一个状态值和更新函数的数组,每次更新都会创建新的状态值

useRef : 返回一个可变的 ref 对象,该对象在组件的整个生命周期内保持不变

3.使用场景

useState : 适用于需要在视图层显示的数据,比如用户输入、UI状态等

useRef : 适用于需要在组件生命周期内保持的值,但不需要触发重新渲染,比如:
DOM 引用、定时器 ID、防抖节流的标记等

4.访问和修改方式

useState : 通过解构获得状态值和设置函数,如 const [value, setValue] = useState(initialValue)

useRef : 通过 .current 属性访问和修改值,如 const ref = useRef(initialValue); ref.current = newValue

二、总结

它的状态变化需要触发UI更新的使用useState

它是内部状态管理,不需要触发重新渲染的,使用useRef,可以减少性能开销。


http://www.dtcms.com/a/332638.html

相关文章:

  • Nginx性能优化与安全配置:打造高性能Web服务器
  • Unity:PlayerPrefs笔记
  • 标准电子邮件地址格式(RFC 5322 里的 mailbox 语法)
  • ABAP : 内表/工作区转JSON
  • Prometheus 监控 Kubernetes Cluster 最新极简教程
  • FreeRTOS多核支持
  • 从根本上解决MAC权限问题(关闭sip)
  • 汽车后雾灯色度难达标?OAS 软件精准解决破瓶颈
  • 图论Day3学习心得
  • Chrome插件开发实战:从架构到发布全流程
  • Docker Compose部署Clickhouse最新版
  • 【软件设计模式】工厂方法与抽象工厂
  • 关于截屏时实现游戏暂停以及本地和上线不同步问题
  • pycharm2025导入anaconda创建的各个AI环境
  • C++第二十课:快递运费计算器 / 黑白配+石头剪刀布小游戏
  • 医院网络安全重保方案
  • 用 KNN 算法解锁分类的奥秘:从电影类型到鸢尾花开
  • 从电影分类到鸢尾花识别:KNN 算法实战指南
  • @[TOC](计算机是如何⼯作的) JavaEE==网站开发
  • MySQL 关键字总结,并结合 SQL 类型(DDL / DML / DQL / DCL / TCL) 说明每类关键字的作用、使用场景和示例
  • 华为实验综合小练习
  • Android RxJava变换操作符详解
  • MuMu模拟器Pro Mac 安卓手机平板模拟器(Mac中文)
  • 9.对象介绍
  • iOS App TF 上架多工具协作实战,一次高效的应用内测分发流程
  • 【数据结构初阶】--排序(三):冒泡排序、快速排序
  • Tomcat部署JDK8项目启动失败:系统化诊断指南
  • 【科研绘图系列】R语言绘制多种饼图
  • OpenCV 阈值处理
  • 基于定制开发开源AI智能名片与S2B2C商城小程序的H5页面小游戏营销模式创新研究