react.js中的onClick事件出错

时间:2018-04-28 05:08:21

标签: reactjs

我正在尝试使用下面的onclick事件

<button className="mini ui button" onClick={this.view(item['id'])}>
   <i className="user icon"></i>
   View
</button>

这会产生如下错误

enter image description here

但是代码下面没有创建错误

<button className="mini ui button" onClick={this.view}>
     <i className="user icon"></i>
     View
</button>

2 个答案:

答案 0 :(得分:2)

将其更改为onClick={() => this.view(item['id'])},否则函数会在渲染过程中立即执行(而不是onClick),如果函数更改状态/道具,则会导致重复重新渲染。

答案 1 :(得分:0)

是的,您可以使用箭头功能作为预览答案,或者您可以使用bind

<button className="mini ui button" onClick={this.view.bind(this, item['id'])}>
   <i className="user icon"></i>
   View
</button> 

这两种方式都有效。