React 函数式调用子组件

复制代码
//这里Child是函数式组件
const Child = forwardRef((props, ref): JSX.Element => {

    //将子组件的方法暴露给父组件
    useImperativeHandle(ref, () => {
        return {
            funcX: function () {
                console.log('执行我');
            }
        };
    })

    return (
        <div>
            <input defaultValue="ABCD" ></input>
        </div>
    );
});
复制代码
复制代码
import React, { Component, forwardRef, useImperativeHandle } from 'react'

const Parent = (props): JSX.Element => {
    let childRef: any = React.useRef();

    function handleOnClick() {
        if (childRef.current) {
            //ChildRef.current?.funcX();
            childRef.current?.funcX();
        }
    }

    return (
        <div>
            <button onClick={handleOnClick}>click</button>
            <Child ref={childRef} />
        </div>
    );
};
export default Parent;
复制代码

 

posted @   全栈攻城师  阅读(150)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示