我是一名初学者,并且在设置一个非常基本的虚拟示例工作时遇到了麻烦。我确定这是一个愚蠢的错误的结果,但我会很感激任何指导。
这是我的javascript:
var lr = lr || {};
lr.Event = Backbone.Model.extend({});
lr.Events = Backbone.Collection.extend({
model: lr.Event,
url: '/json/dummy.json'
});
lr.EventView = Backbone.View.extend({
tagName: 'div',
initialize: function() {
_.bindAll(this, "render");
this.collection = new lr.Events();
this.collection.fetch();
console.log(this.collection.toJSON());
this.render();
},
render: function() {
}
});
lr.ev = new lr.EventView();
这是json / dummy.json:
[
{ "title": "Event1", "Location": "New York, NY" },
{ "title": "Event2", "Location": "Cleveland, OH" }
]
我希望这可以在console.log中使用JSON,但它取而代之的是console.log是一个空数组。我做错了什么?
答案 0 :(得分:5)
您实际上需要等待检索数据,因为提取是异步的。 coffescript中的示例:
collection.fetch({
success: (model, resp) ->
console.log();
})