【发布时间】:2011-11-08 03:00:02
【问题描述】:
我正在使用 Backbone.js 和 Phil Sturgeon 的 CI 休息服务器(很棒的工具,绝对推荐)。
这是我的页面:http://interr0bang.net/7357/fetch/。很基础,一个模型(Event),一个集合(Events),一个视图(EventView)。 该集合位于http://api.interr0bang.net/calendar/events,并返回一个已使用 jsonformatter.curiousconcept.com 验证的 JSON 数组。
代码如下:
$(function(){
var Event = Backbone.Model.extend();
var Events = Backbone.Collection.extend({
model: Event,
url: 'http://api.interr0bang.net/calendar/events',
});
var EventView = Backbone.View.extend({
initialize: function(){
_.bindAll(this, "render","count");
this.collection = new Events();
this.collection.bind("change",this.count);
this.collection.fetch();
this.counter = this.collection.length;
this.render();
},
render: function(){
this.el.html(this.counter);
},
count: function(){
this.counter = this.collection.length;
}
});
eventView = new EventView({el:$('#collection')});
});
视图渲染正常,但是总是显示0,Firebug显示GET请求,状态为200 OK,但是响应体是空的……为什么这样不行?
【问题讨论】:
-
在此示例中,尝试绑定到“更改”以更新项目的“计数”,这是毫无价值的。也许这在 11 年 9 月有效,但今天您将绑定到“添加”或“删除”
标签: json backbone.js