react hooks父组件调用子组件中方法
在 React Hooks 中,父组件调用子组件的方法需要使用 useRef 和 useImperativeHandle 两个 Hook 来实现。
首先,需要在子组件中使用 useRef 创建一个引用,并将其传递给子组件:
```jsx
function ChildComponent(props, ref) {
const childRef = useRef();
useImperativeHandle(ref, () => ({
react面试题hooks childMethod: () => {
// 这里是子组件中的方法逻辑
}
}));
// 子组件的其他渲染逻辑...
}
ChildComponent = forwardRef(ChildComponent);
```
在父组件中,可以使用 useRef 创建一个引用,并将其传递给子组件:
```jsx
function ParentComponent() {
const childRef = useRef();
const handleClick = () => {
childRef.current.childMethod();
};
return (
<div>
<ChildComponent ref={childRef} />
<button onClick={handleClick}>调用子组件方法</button>
</div>
);
}
```
这样,当父组件点击按钮时,就可以调用子组件中的方法了。注意,在子组件的 useImperativeHandle 中返回的对象中,key 是用来调用子组件方法的方法名,value 是实际
要执行的方法逻辑。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论