Javascript 在React中调用处理函数的最佳方式是什么?

Javascript 在React中调用处理函数的最佳方式是什么?,javascript,reactjs,Javascript,Reactjs,我正在阅读关于处理事件的文章,我想知道在组件中调用处理函数的最佳实践是什么 我的问题很简单(我认为甚至是最基本的):在onClick={handleClick}或onClick={this.handleClick]之间应该使用什么 看到这两段代码后,我想知道在第一段代码中调用了handleClick,而在第二段代码中没有关键字this ActionLink(){ 函数handleClick(e){ e、 预防默认值(); log('已单击链接'); } 返回( ); } 类切换扩展了React

我正在阅读关于处理事件的文章,我想知道在组件中调用处理函数的最佳实践是什么

我的问题很简单(我认为甚至是最基本的):在
onClick={handleClick}
onClick={this.handleClick]
之间应该使用什么

看到这两段代码后,我想知道在第一段代码中调用了
handleClick
,而在第二段代码中没有关键字
this

ActionLink(){
函数handleClick(e){
e、 预防默认值();
log('已单击链接');
}
返回(
);
}
类切换扩展了React.Component{
建造师(道具){
超级(道具);
this.state={istogleon:true};
//此绑定是使`This`在回调中工作所必需的
this.handleClick=this.handleClick.bind(this);
}
handleClick(){
this.setState(state=>({
isToggleOn:!state.isToggleOn
}));
}
render(){
返回(
{this.state.isToggleOn?'ON':'OFF'}
);
}
}
ReactDOM.render(
,
document.getElementById('root'))
);

它们是两种不同的情况

  • onClick={handleClick}
    用于函数组件中,在函数
    中此
    关键工作是指调用函数时的位置,在函数组件中不使用此
  • onClick={this.handleClick]
    用于类组件中。在类中,您需要使用
    this
    键访问类属性,该属性在本例中是函数

它们都不同。第一个示例是功能组件,而第二个示例是基于类的组件。