我有以下几点:
<IconButton
icon="icon-delete"
onClick={this.deleteItem.bind(this, itemName)}
/>
但是,当deleteItem
函数触发时,event
参数将丢失。并且引用this
仅指React组件。使用event
时如何保留/通过bind
?
答案 0 :(得分:0)
this.deleteItem.bind(this, itemName)
表示itemName
的值将分配给this.deleteItem
的第一个参数。
因此,事件对象将被分配给第二个参数。
有关.bind
的详细信息,请查看MDN documentation。
答案 1 :(得分:-1)
。您可以使用:: this.deleteItem
// This is binding the function onFormSubmit to this fn.bind(this)
<form onSubmit={::this.onFormSubmit}>
</form>
我有一些像你这样的代码。
<button className="removeitem" onClick={this.handleClickRemoveFromCart(item, item.id)}>
<i className="icon icon-close -x3" />
</button>
handleClickRemoveFromCart(item, id) {
return this.props.onRemoveFromCart(item, id);
};