3.onClick={() => this.handleClick(i)}、onClick={this.handleClick(i)}与onClick={this.handleClick}
好的,那么重点来了,敲黑板了啊~
onClick={这里是一个匿名函数或者函数引用}所以:
onClick = {this.handleClick(i)}这里包裹的函数其实是一个自执行函数,浏览器执行到这里的时候,handleClick函数会立即执行,并不需要点击才能触发。
onClick={() => this.handleClick(i)},onClick={this.handleClick},这两个函数都不是自执行函数,所以点击的时候才会触发,这两者的区别在于,点击的时候onClick={() => this.handleClick(i)}会执行一个匿名函数(箭头函数),再这个函数里调用传参函数(this.handleClick(i));然而onClick={this.handleClick}是直接调用了this.handleClick
总结一下:
this.handleClick(i),this.handleClick都是函数引用。
————————————————
版权声明:本文为CSDN博主「follow-heart」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sinat_43050580/article/details/89353542
网友评论