Reactjs 什么时候我们应该在react中的事件侦听器中使用匿名函数?
我是个初学者。在学习React时,有时我看到人们在事件侦听器中使用匿名函数,我想知道下面的代码是否相同。我认为,要调用函数onDelete,我们只需要使用onClick={this.onDelete(id)}Reactjs 什么时候我们应该在react中的事件侦听器中使用匿名函数?,reactjs,Reactjs,我是个初学者。在学习React时,有时我看到人们在事件侦听器中使用匿名函数,我想知道下面的代码是否相同。我认为,要调用函数onDelete,我们只需要使用onClick={this.onDelete(id)} const cartim=this.props.cart.map((bookCart)=>{ 报税表( {this.onDelete(bookCart.\u id)}>Delete ) }这,; 及 const cartim=this.props.cart.map((bookCart)=
const cartim=this.props.cart.map((bookCart)=>{
报税表(
{this.onDelete(bookCart.\u id)}>Delete
)
}这,;
及
const cartim=this.props.cart.map((bookCart)=>{
报税表(
删除
)
}这,;
当需要传递参数时,可以使用箭头函数
如果在函数中添加括号,则实际上是在执行该函数
因此,使用此代码:
<Button onClick={ this.onDelete(bookCart._id) }>Delete</Button>
…然后将onClick设置为一个函数,该函数在执行时将使用参数调用this.onDelete
我希望这能有所帮助。Dupe,检查一下,prob解决了您的疑问:而且,关于性能,这篇文章非常值得一读,如果您是React初学者,它将为您提供许多有用的信息:)实际上,您的第二个示例不起作用,因为您正在调用函数而不是仅仅传递它。您必须使用arrow函数或绑定arg。
const cartItem=this.props.cart.map((bookCart)=>{
return (
<Button onClick={this.onDelete(bookCart._id)}>Delete</Button>
)
},this;
<Button onClick={ this.onDelete(bookCart._id) }>Delete</Button>
<Button onClick={ () => this.onDelete(bookCart._id) }>Delete</Button>