React基础之useInperativehandlle

embedded/2025/3/9 10:00:55/

通过ref调用子组件内部的focus方法来实现聚焦

与forwardRef类似,但是forwardRef是通过暴露整个Ref来实现,而useInperativehandle是通过对外暴露一个方法来实现的

import { forwardRef, useImperativeHandle, useRef, useState } from "react";

const Son=forwardRef((props,ref)=>{

  //实现聚焦逻辑

  const inputRef=useRef(null)

  const focushandleer=()=>{

    inputRef.current.focus()

  }

  //聚焦方法暴露出去

  useImperativeHandle(ref,()=>{

    return {

      //暴露的方法

      focushandleer

    }

  })

  return <input type="text" ref={inputRef}></input>

})

function App() {

  //传给子组件的函数

  const sonRef=useRef(null)

  const showRef=()=>{

    console.log(sonRef.current);

    sonRef.current.focushandleer()

  }

  return (

    <div className="App">

        <Son ref={sonRef}/>

        <button onClick={showRef}>focus</button>

    </div>

  );

}

export default App;


http://www.ppmy.cn/embedded/171208.html

相关文章

一、IDE集成AI助手豆包MarsCode保姆级教学(安装篇)

一、JetBrains IDEA 中安装教学 第一步&#xff1a;准备工作 操作系统&#xff1a;Windows、macOS、Linux&#xff1b;下载并安装兼容的 JetBrains IDEs 221.5080.210 及以上版本&#xff0c;MarsCode与以下 IDE 兼容&#xff1a; IntelliJ IDEAPycharmGolandAndroid StudioW…

CentOS 最新系统安装 Redis 7.0.11 详细指南

CentOS 最新系统安装 Redis 7.0.11 详细指南 本文将指导您在最新的 CentOS 系统上安装 Redis 7.0.11。我们将涵盖从安装依赖项到配置和启动 Redis 服务器的所有步骤。 1. 准备工作 确保您的系统是最新的&#xff1a; sudo yum update -y安装必要的依赖项&#xff1a; sudo…

C语言-语法

数据类型 字符串 C中字符串拼接不用+号,直接使用空格。 char* str = "hello" "world"; 换行链接,加上\就不会报错 char* longStr = "00000000000000000000000000000\ 00000000000000000000000000000"; typedef C 语言提供了 typedef …

爬虫案例九js逆向爬取CBA中国篮球网

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、CBA网站分析二、代码 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 爬取CBA中国篮球网 提示&#xff1a;以下是本篇文章正文内容…

tomcat的web管理

进入到conf cd /usr/local/tomcat/conf/备份tomcat-users.xml cp tomcat-users.xml{.,bak}编辑tomcat-users.xml vim tomcat-users.xml增加以下内容 配置tomcat-users.xml <role rolename"manager-gui"/><role rolename"admin-gui"/><use…

解析 SQL,就用 sqlparse!

文章目录 解析 SQL&#xff0c;就用 sqlparse&#xff01;一、背景&#xff1a;为什么你需要 sqlparse&#xff1f;二、什么是 sqlparse&#xff1f;三、如何安装 sqlparse&#xff1f;四、简单易用的库函数1\. parse(sql)2\. format(sql, **options)3\. split(sql)4\. get_typ…

网络编程之应用层协议(http)

HTTP: 1.url(统一资源定位符) 2.http:浏览器与服务器之间的通信标准 端口号&#xff1a;80&#xff1b; 传输层协议&#xff1a;TCP; 3.http工作流程&#xff1a; 4.http的报文格式&#xff1a; 5.HTTP请求报文的方法 6.回应报文&#xff1a;状态码 注意&#xff1a;

物联网系统搭建

实验项目名称 构建物联网系统 实验目的 掌握物联网系统的一般构建方法。 实验要求&#xff1a; 1&#xff0e;构建物联网系统&#xff0c;实现前后端的交互。 实验内容&#xff1a; CS模式MQTT&#xff08;不带数据分析处理功能&#xff09; 实现智能设备与应用客户端的交…