版本1.5.1,使用语言typescript
说明如下:
A类代码:
export class A{
…
private _lbl:cc.Lable;
this._lbl=… //获取到这个Lable对象
…
let b:B=new B();
b.callBack(this, this.callBack);
private callBack(arg:any):void
{
this._lbl.string=“xxx”;//这里无法更新显示,界面上显示的还是原来的内容
console.log(this._lbl.string);//这里输出的是xxx,也就是说打印输出来的内容是修改后的内容,说明this._lbl的内容已经更改了啊,但界面上没有显示出来?
}
}
B类代码
export class B{
private callBack(thisObj:any, callBackFun:Function):void
{
callBackFun.call(thisObj, argX);
}
}
如果把以上A类的代码中的:
b.callBack(this, this.callBack);
改成:
b.callBack(this, this.callBack.bind(this));
其结果是对的
这是不是一个bug?