未调用主干成功回调



我在获取集合后尝试调用success回调时遇到问题。这是集合中的代码,问题是执行executeLongPolling

(function() {
window.StatusCollection = Backbone.Collection.extend({
    longPolling : false,
    intervalSeconds : 20,
    model: Status,
    url: function(){
        return this.project.id + 'statuses/';
    },
    initialize : function(){
        _.bindAll(this);
    },
    startLongPolling : function(invervalSeconds){
        this.longPolling = true;
        if( invervalSeconds ){
            this.invervalSeconds = invervalSeconds;
        }
        this.executeLongPolling();
    },
    stopLongPolling : function(){
        this.longPolling = false;
    },
    executeLongPolling : function(){
        var that = this;
        this.fetch({
            success : function(collection, response, options) {
                that.onFetch();
            }
        });
    },
    onFetch : function () {
        if( this.longPolling ){
            setTimeout(this.executeLongPolling, 1000 * this.intervalSeconds);
        }
    }
}); })();

令人惊讶的是,当我添加更新选项时,它可以工作并且调用that.onFetch()行:

executeLongPolling : function(){
        var that = this;
        this.fetch({ update: true,
            success : function(collection, response, options) {
                that.onFetch();
            }
        });
    },

我正在使用骨干-0.9.10.和骨干关系-0.7.0

任何想法出了什么问题?谢谢!

在寻找

我的问题的解决方案时遇到了您的问题,从 0.9.2 升级到 0.9.10 后,只是添加到我的集合(我不使用 fetch)似乎被破坏了任何人,只是瞥了一眼你的问题,可能与 fetch 在 0.9.10 中发生了变化有关看看这些:

骨干投掷集合[方法]函数错误https://github.com/addyosmani/backbone.paginator/issues/134

或者也许是骨干关系在 0.9.10 中尚未完全正常运行的事实https://github.com/PaulUithol/backbone-tastypie/pull/25

相关内容

  • 没有找到相关文章

最新更新