react知识点(待完善)
发布时间:2020-12-15 06:28:01 所属栏目:百科 来源:网络整理
导读:一. react onclick函数绑定 参考:https://segmentfault.com/q/1010000010918131 renderSquare(i) { return ( Square value={this.state.squares[i]} onClick={() = this.handleClick(i)} / ); } 若使用 onClick={this.handleClick(i)} 会报错 原因如下: 如
一. react onclick函数绑定参考:https://segmentfault.com/q/1010000010918131 renderSquare(i) { return ( <Square value={this.state.squares[i]} onClick={() => this.handleClick(i)} /> ); } 若使用 onClick={this.handleClick(i)} 会报错 原因如下: 如果 直接写 onClick={this.handleClick(i)}
这样函数在render的时候已经执行了呀,肯定不行噻, onClick= {this.handleClick}
但是 这个函数 需要携带一个 i 的参数过去 onClick = {()=>this.handleClick(i)}
这样闭包 让 i 对 renderSquare 的i 保持引用 myFunc = () => { alert("提示框"); } ... onClick = () => this.myFunc(); //等价于 onClick = function() { return function myFunc() { alert("提示框"); }; } onClick = this.myFunc(); //等价于 onClick = function() { alert("提示框"); }第一种不会立即执行,点击才会执行。 第二种是匿名函数,是会立即执行的。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |