【发布时间】:2020-08-17 06:10:18
【问题描述】:
当我遇到这个例子时,我正在 Codecademy 中学习 React:
class MyClass extends React.Component {
myFunc() {
alert('Stop it. Stop hovering.');
}
render() {
return (
<div onHover={this.myFunc}>
</div>
);
}
我注意到当调用 myFunc 时,没有使用括号,我想知道为什么。如果有人可以解释,我将不胜感激。
【问题讨论】:
-
您正在传递
onHover事件的回调名称。仅当您要执行该函数时才需要括号。 -
因为您正在传递对函数的引用...(函数定义以便反应可以在事件发生时执行它)
-
所以:函数/方法不在不使用括号时调用then;特别是,回调通常在稍后调用,在这种情况下,当实际调用函数时,使用括号(在内部,在这种情况下通过反应)..
-
这是 Javascript 的一种行为:将函数作为参数传递。
-
这个帖子已经解释清楚了。 stackoverflow.com/questions/42178136/…
标签: javascript reactjs methods parentheses calling-convention