我的观点正确显示虚假信息,因此我现在尝试应用异步数据加载来检索实际数据。问题是我不确定我应该怎么做。我应该自己创建AJAX调用吗?我应该使用Socket API吗?我应该使用内置的REST API(以及如何异步执行)?服务器端处理程序仍未实现,因此服务器如何提供数据,这是完全灵活的。
答案 0 :(得分:2)
我怀疑你自己的ajax电话是否需要......
我无法分辨套接字但是我知道这是可能的,并且取决于你的应用程序一个坚实的想法。
我一直在使用默认的REST功能,它对我很有用, 我将如何做的一个小例子,
为了使它不那么复杂,我将只是从页面加载,而不是使用路由器和所有。
var myView = Backbone.View.extend({
initialize: function() {
_.bindAll(this, 'render');
var v = this;
this.model.bind("change", function(e) {
this.render();
});
},
render: function() {
this.el.empty();
this.el.text(this.model.get('name'));
}
});
var myModel = Backbone.Model.extend({
url: "/api/myModel", // change to your server code...
defaults: {
name: "john"
}
});
$(function(){
var m = new myModel({}); // dummy model
var v = new myView({ model: m, el: $('#myDiv')});
v.render();
m.fetch(); // takes the url of the model or collection and fetches it from the server side ...
});
如果你想测试fetch会做什么,你可以从你的控制台尝试这个代码,(或者将它添加到jquery文档加载函数:
m.set({ name: 'peter' });
这会更改模型的属性“name”,您将立即看到视图更新本身,因为它会侦听模型的change事件。
有关这些活动的更多信息,请访问:http://documentcloud.github.com/backbone/#Events