我一直在其官方网站上浏览React Example:
这个例子真的很烦我,对我有帮助
代码
class LoggingButton extends React.Component {
handleClick() {
console.log('this is:', this);
}
render() {
// This syntax ensures `this` is bound within handleClick
return (
<button onClick={(e) => this.handleClick(e)}> //problematic line
Click me
</button>
);
}
}
根据文档:
代表React事件的e参数将作为 论点
问题
我想问问这个e
来自哪里?
我没有定义e
,然后它如何工作而没有任何错误?
e
来自何处?
在this.handleClick(e)
中,我传递了一个参数,而handleClick()
没有收到任何参数,那么它如何工作而没有任何错误?
答案 0 :(得分:1)
在这种情况下,e
被绑定到synthetic event,这与使用DOM时遇到的正常事件相似,但是无论使用哪种浏览器,该事件都试图保持一致。 / p>
这与标准事件处理程序没有什么不同,标准事件处理程序也使用通用的described here获取事件对象。考虑一个standard DOM click
event。