如果我在视图中循环集合,它似乎是空的,不会出现警报对话框。当我在这个视图中使用 console.log(this.collection) 时,它看起来没问题(这个集合中有 16 个元素)。
我的路由器:(集合 url:'/api/employees',这是一个 rails json 输出)
Office.Routers.Employees = Backbone.Router.extend({
routes: {
"": "index"
},
initialize: function() {
this.collection = new Office.Collections.Employees();
this.collection.fetch();
},
index: function() {
var view = new Office.Views.EmployeesIndex({ collection: this.collection });
view.render();
}
});
和我的 index.js 视图:
Office.Views.EmployeesIndex = Backbone.View.extend({
render: function() {
this.collection.each( function( obj ){ alert(obj); } );
}
});
编辑:
这是 console.log(this.collection) 在视图中的输出:http: //i.stack.imgur.com/ZQBUD.png
编辑2:
我认为 Rails 是有罪的。当我使用静态集合时,一切正常
var collection = new Backbone.Collection([
{name: "Tim", age: 5},
{name: "Ida", age: 26},
{name: "Rob", age: 55}
]);