我希望我的React函数组件调用其父级中的函数。
我能够用类组件这样做:
<MyChild func={this.functionname} />
但是我的子组件访问this.functionName
时遇到问题,该组件是一个功能性组件。
我如何在子功能组件*中以及在其所有功能(例如useCallback
和useEffect
(中访问它
我不确定我是否正确理解这个问题,但你可以很容易地从子组件中的父组件调用函数,就像这样:
export function Child({ func }) {
useEffect(() => {
console.log('Calling func');
func();
}, [func]);
return <div>I am the child component</div>;
}
export function Parent() {
const childFunc = () => console.log('call me!');
return (
<main>
<h1>Hello world</h1>
<Child func={childFunc} />
</main>
);
}
该方法在具有this.props.func
的子组件中进行访问。