目录

React基础之-forwardRef

目录

React基础之 forwardRef

使用场景:通过ref获取子组件内部input元素使其聚焦

如果父组件需要操作子组件的Dom,可以使用forwordRef来实现。通过父组件传递一个ref对象,子组件接收到这个对象之后与内部的ref先绑定,此时,父组件就能操作子组件的Dom了

import

{

forwardRef

,

memo

,

useCallback

,

useMemo

,

useReducer

,

useRef

,

useState

}

from

“react”

;

const

Son

=

forwardRef

((

props

,

ref

)

=>

{

return

<

input

type

=

“text”

ref

=

{

ref

}

</

input

})

function

App

() {

//

传给子组件的函数

const

sonRef

=

useRef

(

null

)

const

showRef

=()

=>

{

console

.

log

(

sonRef

);

sonRef

.

current

.

focus

()

}

return

(

<

div

className

=

“App”

<

Son

ref

=

{

sonRef

}

/>

<

button

onClick

=

{

showRef

}

focus

</

button

</

div

);

}

export default

App

;

https://i-blog.csdnimg.cn/direct/8e92d34cb8ea41fbb32d1da257c1bd4c.png