useRef 和forwardRef

2021-01-05  本文已影响0人  Viewwei

ForwardRef.js

import FocusInput from "./ForwInput"
import React,{useEffect, useRef}from 'react';
let ForwardRef =() =>{
    let ref = useRef()
    useEffect(()=>{
        const {current} = ref
        debugger
        current.focus()
    },[])
    return <div>
        <p>focus</p>
        <FocusInput ref={ref}></FocusInput>
    </div>
}
export default ForwardRef

FocusInput.js

import React,{forwardRef} from 'react';
let FocusInput = forwardRef((props,ref)=>(
    <input type="text" ref={ref}/>
))
export default FocusInput

上述代码中如果删除forwardRef,那么程序会出错,这是因为current为undefined

上一篇 下一篇

猜你喜欢

热点阅读