第一
<div tabIndex="0"
onKeyPress={this.onHandleClick.bind(null, 'first')}
onClick={this.onHandleClick.bind(null, 'first')}>
第二
onHandleClick = (event) => {
$(event.currentTarget).data('circle')
}
<div tabIndex="0"
data-circle="first"
onClick={this.onHandleClick}>
还有另一种方法可以做到更清洁和正确的方法吗?这两种感觉都像黑客一样:特别是在JSX中使用bind。
最佳答案
您可能遇到的另一种情况是在回调中需要正确的“this”指针,一些任意参数和事件对象本身。在这种情况下,您可以执行以下操作:
<button onClick={(event) => this.handleAction('arbitrary-data', event)}> ... </button>
handleAction(data, event) {
event.preventDefault()
// this.state.something
console.log(`data ${data}`)
}
关于javascript - 在JSX点击中传递数据的正确方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36550160/