Skip to main content

forwardRef

因为函数组件没有实例, 所以函数组件无法接收ref属性,可以通过React.forwardRef()来实现。

React.forwardRef 会创建一个React组件,这个组件能够将其接受的 ref 属性转发到其组件树下的另一个组件(子组件)中。它接受渲染函数作为参数。React 将使用 propsref 作为参数来调用此函数。此函数应返回 React 节点。

const FancyButton = React.forwardRef((props, ref) => (
<button ref={ref} className="FancyButton">
{props.children}
</button>
));