将父组件的ref转发给子组件,从而让父组件的ref引用子组件中的dom元素

    1.需要在子组件中引入formwardRef,将需要转发的子元素标签的ref赋值给传递进来的ref 2.在父组件中引入子组件,将ref绑定一个useref

    1. father.jsx
    2. import React, { useRef } from 'react'
    3. import Son from "../Son"
    4. const Father=()=>{
    5. const inputRef=useRef()
    6. const clickHandle=()=>{
    7. console.log(inputRef.current.value)
    8. }
    9. return(
    10. <div>
    11. 父组件
    12. <Son ref={inputRef}></Son>
    13. <button onClick={clickHandle}>点击转发</button>
    14. </div>
    15. )
    16. }
    17. export default Father
    1. son.jsx
    2. import React, {forwardRef } from 'react'
    3. const Son=forwardRef((props,ref)=>{
    4. return (
    5. <div>
    6. 子组件
    7. <input type="text" ref={ref}/>
    8. </div>
    9. )
    10. })
    11. export default Son

    父组件需要获取子组件的标签