如何在React中传递事件处理程序函数

How to pass event handler functions in React?

本文关键字:事件处理 程序 函数 React      更新时间:2023-09-26

我是React的新手,我仍在努力找出最佳实践,请耐心等待。

所以,假设我有一个<ParentComponent /><ChildComponent />,我想要以下行为:当孩子被点击时,应该会发生一些事情。

我应该如何为<ChildComponent />实现onClick事件处理程序?

我应该在<ParentComponent />的类中定义它,并将它作为prop传递给<ChildComponent />以用作onClick={this.props.handleClick}还是我应该在<ChildComponent />中定义它并简单地将它与onClick={this.handleClick}一起使用?

是一种方法优于另一种方法,还是两者都没有区别?

这完全取决于该方法的实际作用。如果该方法正在使用或更改父组件中的状态,则在父组件中定义它并将其作为道具传递。如果该方法与父组件或其状态无关,只需在子组件中定义即可。