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

react的useRef用什么作用

useRef 是 React 提供的一个钩子,用于在函数组件中创建和管理对 DOM 元素或组件实例的引用。它返回一个包含 current 属性的对象,可以用来存储对某个值的引用,而这个引用在组件的整个生命周期内保持不变。

useRef 的主要用途
1.访问 DOM 元素:

通过 useRef 创建的引用可以用来访问和操作 DOM 元素。这在处理需要直接操作 DOM 的情况时很有用,比如设置焦点、获取元素的尺寸等。

import React, { useRef, useEffect } from 'react';function MyComponent() {const inputRef = useRef(null);useEffect(() => {inputRef.current.focus(); // 组件挂载后设置输入框焦点}, []);return <input ref={inputRef} />;
}

2.保存可变数据:

useRef 也可以用来保存不引起重新渲染的可变数据。即使 useRef 的值改变,组件也不会重新渲染。

import React, { useRef } from 'react';function Counter() {const count = useRef(0);const increment = () => {count.current += 1;console.log(count.current);};return <button onClick={increment}>Increment</button>;
}

3.存储上一个渲染的值:
useRef 可以用来存储组件上一个渲染周期中的某些值。

import React, { useRef, useEffect, useState } from 'react';function Example() {const [count, setCount] = useState(0);const prevCountRef = useRef();useEffect(() => {prevCountRef.current = count;}, [count]);const prevCount = prevCountRef.current;return (<div><p>Now: {count}</p><p>Before: {prevCount}</p><button onClick={() => setCount(count + 1)}>Increment</button></div>);
}
http://www.lryc.cn/news/434046.html

相关文章:

  • 10.2 TCP IP模型、IP协议、IPv4、子网掩码
  • 工业相机飞拍的原理及工作原理
  • 通过AI来创建一个_____html css网页制作成品 例子演示
  • C ++ 从单链表到创建二叉树到二叉树的遍历(结构体)
  • Python 编程:如何巧妙运用 `abc` 模块解锁面向对象设计的新维度?
  • Jenkins 执行 shell 时报错 Host key verification failed.
  • MyBatis-Plus&Druid数据源
  • MTPA控制分析与推导
  • Spring Boot 的Web项目如何直接显示html
  • 【回收站选址】
  • Springboot整合websocket(附详细案例代码)
  • 微信小程序:navigateTo跳转无效
  • C++ 设计模式——解释器模式
  • 【开源大模型生态6】生态大咖与产品布局
  • 虚拟机苹果系统的QT安装体验
  • 多路转接之poll(接口介绍,struct pollfd介绍,实现原理,实现非阻塞网络通信代码)
  • 两个月冲刺软考——位示图题型的例题讲解与分析;索引文件的详细解读
  • SprinBoot+Vue校园数字化图书馆系统的设计与实现
  • python如何加速计算密集型任务?
  • 握手的方式展现人的性格及行为倾向
  • Java 排序算法详解
  • vue3实现拖拽移动位置,拖拽过程中鼠标松开后元素还吸附在鼠标上并随着鼠标移动
  • 没有屋檐的房子-011
  • Puppeteer-Cluster:并行处理网页操作的新利器
  • 使用Protocol Buffers传输数据
  • chmod修改文件权限
  • 二叉树--python
  • matlab数据批量保存为excel,文件名,行和列的名称设置
  • Pygame中Sprite类实现多帧动画3-2
  • C#发送正文带图片带附件的邮件