React useRef 详细使用

简介: React useRef 详细使用
  • 在函数组件中获取真实的 dom 元素对象或者是组件对象。
  • 使用步骤
    1、导入 useRef 函数
    2、执行 useRef 函数并传入 null,返回值为一个对象,内部有一个 current 属性存放拿到的 dom 对象(组件实例)
    3、通过 ref 绑定要获取的元素或者组件
  • 获取 dom 实例
import { useEffect, useRef } from 'react'
function App() {  
    const divRef = useRef(null)  
    useEffect(() => {    
      console.log(divRef)  
    },[])  
    return (    
      <div>      
        <div ref={ divRef }>this is div</div>    
      </div>  
    )
}
export default App
  • 获取 组件 实例
    函数组件由于没有实例,不能使用 ref 获取,如果想获取组件实例,必须是类组件。
import React, { useEffect, useRef } from 'react'
// 类组件
class Sub extends React.Component {
  render () {
    return (
      <div>子组件</div>
    )
  }
}
// 函数组件不 useRef 获取,会报错
// function Sub () {
//   return (
//     <div>子组件</div>
//   )
// }
function App() {  
    const divRef = useRef(null)  
    useEffect(() => {    
      console.log(divRef)  
    },[])  
    return (    
      <div>      
        <Sub ref={ divRef }>this is div</Sub>    
      </div>  
    )
}
export default App
相关文章
|
2月前
|
前端开发 JavaScript
React中函数式Hooks之useRef的使用
React中函数式Hooks的useRef用于获取DOM元素的引用,示例代码演示了其基本用法。
33 3
|
3月前
|
前端开发
React使用useRef ts 报错
【8月更文挑战第17天】
66 4
|
25天前
|
存储 缓存 JavaScript
深入理解 React-Hooks 之 useRef
【10月更文挑战第20天】总之,`useRef` 是 React-Hooks 中一个非常实用的工具,它为我们提供了一种灵活而强大的方式来处理组件中的各种数据和操作。通过深入理解和掌握 `useRef` 的原理和用法,我们能够更好地构建高效、稳定的 React 应用。
32 6
|
1月前
|
存储 前端开发 JavaScript
React useState 和 useRef 的区别
本文介绍了 React 中 `useState` 和 `useRef` 这两个重要 Hook 的区别和使用场景。`useState` 用于管理状态并在状态变化时重新渲染组件,适用于表单输入、显示/隐藏组件、动态样式等场景。`useRef` 则用于在渲染之间保持可变值而不触发重新渲染,适用于访问 DOM 元素、存储定时器 ID 等场景。文章还提供了具体的代码示例,帮助读者更好地理解和应用这两个 Hook。
40 0
|
2月前
|
存储 前端开发 JavaScript
react的useRef用什么作用
react的useRef用什么作用
49 1
|
4月前
|
前端开发 JavaScript 数据格式
react18【系列实用教程】Hooks (useState,useReducer,useRef,useEffect,useContext,useMemo,useCallback,自定义 Hook )
react18【系列实用教程】Hooks (useState,useReducer,useRef,useEffect,useContext,useMemo,useCallback,自定义 Hook )
93 1
|
4月前
|
JavaScript
react18【系列实用教程】useRef —— 创建 ref 对象,获取 DOM (2024最新版)
react18【系列实用教程】useRef —— 创建 ref 对象,获取 DOM (2024最新版)
57 0
|
6月前
|
前端开发 JavaScript 测试技术
React Hooks之useState、useRef
React Hooks之useState、useRef
|
6月前
|
存储 前端开发 JavaScript
React Hooks的useState、useRef使用
React Hooks的useState、useRef使用
71 2
|
6月前
|
存储 前端开发 JavaScript
[React] useRef用法和特性
[React] useRef用法和特性
100 0