在回调中访问'this'?

时间:2015-06-23 13:07:16

标签: javascript jquery

这个问题与我之前的问题有关,但我现在遇到了不同的错误。

我有一系列的承诺,在每次执行之前,我会检查用户是否取消了承诺链。

我的问题是,我无法在回调方法中访问'this',下面是一个粗略的例子,我无法访问getMoreData()中的p.test变量

p.test = 'hello!';

p.init = function(){

    this.getData() 
    .then(function(data) {
        return shouldContinue(getMoreData,data);
    })
}

p.shouldContinue = function(cb, data){
   ...
  this.currentRequest = cb.call(this,data);
};

p.getData = function(){
    //return ajax call
};

p.getMoreData = function(){
    console.log(this.test); //undefined
    //return ajax call
};

0 个答案:

没有答案