有没有绑定this?
应该是没有绑定this,这里this不是你想要的那个,你这里定义了self=this,可以用self.node代替
可以定义在on最后加上this参数即可,this.node.on(eventName, function, this)
把你的 function(){} 替换成()=>{},就不用绑定 this 也可以了
emmm,虽然我挺习惯用箭头函数的,但是注册事件我倒是一直都没用箭头函数…主要是注销的时候临时写的方法不好注销
我也不喜欢用匿名函数,我是看他用的匿名函数才这么建议的
hi,感谢回复,我上面打印的this.node 是我想要的, 你的意思是在我的监听函数里面需要绑定this嘛,请问这里该如何绑定呢
感谢各位的热心帮助泪崩了,从C++跳script真是不懂,困扰我好几天了
你是说界面绑定还是上面的程序块
hi ,这是JavaScript的要求嘛,这个this。node.on 下面的代码快里面的this指针指向变了嘛
上面的代码
this.node.on(cc.Node.EventType.TOUCH_START, function(event){
// do something
}.bind(this));
this.node.on(cc.Node.EventType.TOUCH_START, ()=>{
// do something
});
随便选一个用
我也是转的js,这块是js变量冒泡查找的问题,我也没整明白,只是知道怎么能用
回调里event.target,就是on的负责人
这里的bind this 指的是在该函数体里面this = this.node?
我理解的是绑定function里的this为外层onLoad的this,这样在函数里this.node就是onLoad里面的this.node了
代码里都有var self = this了, 在 内部 function 里 还用this。 箭头函数,绑定或者用self 代替this 都可以。
强力推荐 用let 替换 var,解决 var 作用域的问题。
bind(this)后,函数体里面的this就是指当前脚本,this.node是挂载当前脚本的节点
该主题在最后一个回复创建后7天后自动关闭。不再允许新的回复。
