gpt4 book ai didi

javascript - 覆盖主干中的获取方法

转载 作者:数据小太阳 更新时间:2023-10-29 04:38:49 26 4
gpt4 key购买 nike

我想覆盖模型和集合中的获取方法,以便在没有网络连接时从本地存储获取数据。

这是集合中的获取函数

fetch:function(){
if(online){
return Backbone.Collection.prototype.fetch.call(this) ;
}else{
// return Backbone.Collection.fetch event - with data from localstorage
}
}

我在这里面临两个问题

a.success和error函数都没有被执行

this.collection.fetch({
success: function(data){ ... },
error: function(){ ... }
});

如果没有连接,如何将数据设置到集合中,以便我可以在成功函数中访问它

最佳答案

尝试这样的事情。 $.ajax 返回一个 promise ,因此您应该能够执行以下操作

fetch:function(){
var dfd = new jQuery.Deferred();
if(this.online){
return Backbone.Collection.prototype.fetch.call(this) ;
}else{
// Do your logic for localstorage here
dfd.resolve();
}

return dfd.promise();
}

然后你可以使用上面的例子或者我喜欢的

this.collection.fetch().then(function() { 
console.log('Successfully fetched from localstorage or server.');
});

关于javascript - 覆盖主干中的获取方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19175211/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com