我什么时候需要使用bind(this)

时间:2017-08-18 14:49:25

标签: javascript promise this bind

我无法确定何时需要将实例绑定到函数。

例如,假设我正在使用一个返回Promise<void>的服务函数,我不想在我的当时链中使用匿名函数,我想做这样的事情:

this.someService.somePromiseMethod().then(this.doSomething)`

doSomething

public doSomething(){
  this.a = 2
}

但由于无法识别此aundefined

,因此失败

使用时:this.someService.somePromiseMethod().then(this.doSomething.bind(this)正常工作

为什么?对服务的调用是在实例中完成的,为什么我仍然需要将这个实例绑定到函数调用?

提前感谢您的任何澄清!

0 个答案:

没有答案