访问匿名函数中的上下文

时间:2012-08-13 08:05:51

标签: jquery anonymous-function

我想在以下代码中访问processAfterDone,但我得到一个Reference错误,因为我在一个匿名函数中。我使用Base.js进行类继承。如果你知道的东西比我开放的东西更好。我尝试过self.processAfterDone()和this.processAfterDone()。我无法弄清楚这个问题是由我,jQuery还是Base.js的工作方式引起的。任何帮助appriciated。现在代码:

var Test = Base.extends({ // uses Base.js for class like javascript - see http://dean.edwards.name/weblog/2006/03/base/

    callAjax: function() {
            requestAccessToken().done(function() { // does an ajax call and passes the ajax return object to access .done()
                    console.log("call processAfterDone");
                    processAfterDone();
            });
    },

    processAfterDone: function() {
            console.log("processAfterDone");
            //do more stuff here
    }

})

1 个答案:

答案 0 :(得分:1)

使用.done($.proxy(this, 'processAfterDone'));解决了这个问题,花了我2​​天才弄明白。希望这有助于很多人。