React Hooks+Typescript 中 父组件调用子组

2021-04-10  本文已影响0人  w晚风

父组件

import React, { useState,  useRef } from 'react';
import { Table, Card, Button, } from 'antd';
import ChildComp from './child';

const FComp: React.FC<any> = (props) => {
    let child = useRef();;
    let [text,setText] = useState<string>("我是父组件");
    
    function onChild(){
        console.log("subMitData", child.current.childMethod());
        let childName = child.current.childMethod();
        setText(childName);
    }
    
    return (
            <ChildComp onRef={child} />
            <Button type='primary' onClick={onChild}>调用子组件</Button>
            <h1>{text}<h1>
     )          
}

子组件

import React, { useImperativeHandle} from 'react';

const ChildComp: React.FC<any> = (props:{onRef}) => {
     useImperativeHandle(onRef, () => ({
        // onChild 就是暴露给父组件的方法
        onChild: () => {
          return {
            childName:'我是子组件'
          }
        }
    }));
    return (
        <div>我是子组件</div>
    )
            

上一篇下一篇

猜你喜欢

热点阅读