我需要帮助才能尝试使用backbone.js
从我的模型中获取属性 以下是我到目前为止所尝试的内容。我连接到REST URL并在json中提取数据。我现在想在视图中显示一些数据。但是,当我尝试打印/控制台club_url
时,我收到一个未定义的错误。如果我打印出test
对象本身,我可以在对象的attributes section
中看到该值。
有人能告诉我哪里出错了吗?
(function ($) {
var Model = Backbone.Model.extend({
urlRoot: '/api/test/',
initialize: function () {
this.club_url = this.club_url
}
});
var thisCollection = Backbone.Collection.extend({
urlRoot: '/api/test/',
model: Model
});
var PanelView = Backbone.View.extend({
el: '#reward_view',
initialize: function () {
_.bindAll(this, 'render');
this.collection = new thisCollection();
this.collection.bind('add', this.appendItem);
this.render();
},
render: function () {
var test = new thisCollection;
test.fetch();
console.log(test.get('club_url'))
return this;
}
});
var listView = new PanelView();
})(jQuery);
我尝试的另一项测试是在视图中初始化
this.model = new Model()
this.model.fetch()
然后在渲染功能中我做了这个:
this.model.get('club_url')
然而这也不起作用!
答案 0 :(得分:0)
获取数据是异步操作。所以,我想你应该等到事件才能获得club_url
。即类似的东西:
render: function () {
var test = new thisCollection;
test.fetch({
success: function(collection, response) {
console.log(test.get('club_url'))
}
});
return this;
}