react移动端使用什么事件代替react link onclickk

触摸事件:onTouchCancel\onTouchEnd\onTouchMove\onTouchStart
(只会在移动设备上接受)
键盘事件:onKeyDown\onKeyPress\onKeyUp
剪切事件:onCopy\onCut\onPaste
表单事件:onChange\onInput\onSubmit
焦点事件:onFocus\onBlur
UI元素:onScroll(移动设备是手指滚动和PC的鼠标滑动)
滚动事件:onWheel(鼠标滚轮)
鼠标类型:onClick\onContextMenu(右键)\onDoubleClick\onMouseDown\onMouseEnter\
& & &onMouseLeave\onMouseMove\onMouseOut\onMouseOver\onMouseUp
&&onDrag\onDrop\onDragEnd\onDragEnter\onDragExit\onDragLeave\onDragOver\onDragStart
阅读(...) 评论()在 SegmentFault,解决技术问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
一线的工程师、著名开源项目的作者们,都在这里:
获取验证码
已有账号?
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
最近开始学习react,刚看完官方的教程TicTacToe,对onClick事件绑定的语法不是很理解,所以来这里提问,求大家帮忙解答。下面是官方教程里的代码:
class Board ponent {
constructor() {
this.state = {
squares: Array(9).fill(null),
xIsNext: true,
handleClick(i) {
const squares = this.state.squares.slice();
squares[i] = this.state.xIsNext ? 'X' : 'O';
this.setState({
squares: squares,
xIsNext: !this.state.xIsNext,
renderSquare(i) {
value={this.state.squares[i]}
onClick={() =& this.handleClick(i)}
render() {
const status = 'Next player: ' + (this.state.xIsNext ? 'X' : 'O');
&div className="status"&{status}&/div&
&div className="board-row"&
{this.renderSquare(0)}
{this.renderSquare(1)}
{this.renderSquare(2)}
&div className="board-row"&
{this.renderSquare(3)}
{this.renderSquare(4)}
{this.renderSquare(5)}
&div className="board-row"&
{this.renderSquare(6)}
{this.renderSquare(7)}
{this.renderSquare(8)}
其中这一段:
renderSquare(i) {
value={this.state.squares[i]}
onClick={() =& this.handleClick(i)}
绑定onClick事件时,为什么不直接写成onClick={this.handleClick(i)}呢?
箭头函数等同于
function() {
return this.handleClick(i);
的话,那么我的理解两种写法应该是等效的,但第二种貌似过不了编译。刚入门很多不懂,求大家解答一下,十分感谢!
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
箭头函数没有上下文的this指向
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
因为不会绑定自己的this,
如果不用箭头函数,需要手动绑定函数的this:onClick={() =& this.handleClick.bind(this)(i)}
或者在定义的时候就用箭头函数:
handleClick = (i) =& {
onClick = {this.handleClick}
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:在 SegmentFault,解决技术问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
一线的工程师、著名开源项目的作者们,都在这里:
获取验证码
已有账号?
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
有没有什么类似Tap类似的封装事件,之前使用了react-tap-event-plugin 这个第三方库,但是打包的时候似乎会出问题。
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
既然不喜欢react-tap-event-plugin, 那就改用吧
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:

我要回帖

更多关于 react onclick 传参 的文章

 

随机推荐