我在本地系统中确实有一些数据。这是我通过骨干实现的。有疑问是否可以将我的功能与本地数据同步添加或删除?
或主干只能在服务器响应上工作吗?如果它甚至在localhost中工作,我如何同步我在这里做的本地请求?
任何一个看着这个征服的人,请不要介意我,我很擅长做一个项目,并且很紧张。
我编写的代码:
(function($){
var list = {};
list.model = Backbone.Model.extend({
defaults:{
name:'need the name'
}
});
list.collect = Backbone.Collection.extend({
model:list.model,
url : 'data/names.json',
initialize:function(){
this.fetch(); // how can i sync?
}
});
list.view = Backbone.View.extend({
initialize:function(){
this.collection = new list.collect();
this.collection.on("reset", this.render, this);
},
render:function(){
_.each(this.collection.models, function(data){
console.log(data.get('name'));
})
}
});
var newView = new list.view();
})(jQuery)
答案 0 :(得分:3)
简而言之,要完成此操作,您基本上会将数据同步/保存到本地存储。
您可以通过覆盖同步方法手动执行此操作,但您可能需要查看backbone.offline这是为您做的。
更新:
看起来backbone.offline现在处于长重建之下,对于寻找离线解决方案的任何其他人,您可能希望查看backbone.localStorage(哪个backbone.offline在部分基于但现已更新)或Backbone.dualStorage。