我重組了我的全部工作的Backbone.js項目,並將我的模型,集合和視圖的所有模型,集合和視圖都轉換爲單獨的文件,並做了一些重寫,現在它不會渲染。我試過了我能想到的一切。有小費嗎?我的Backbone.View將不會渲染
var SessionView = Backbone.View.extend({
model: Session,
el: '#list',
template: _.template($('#session-template').html()),
initialize: function() {
this.model.bind('change', _.bind(this.render, this));
this.render();
},
render: function() {
this.$el.html(this.template({sessions: sessionList}));
return this;
}
});
var sessionView = new SessionView();
var SessionListView = Backbone.View.extend({
el: '#list',
model: sessionList,
initialize: function() {
sessionList.bind('add', this.add, this);
sessionList.bind('reset', this.add, this);
sessionList.fetch();
},
render: function() {
var view = new sessionListView();
this.$el.append(view.render().el);
new SessionView({model: Session});
return this;
}
});
var sessionListView = new SessionListView();
這無疑就是'this.model.on',不'this.model.bind'? (但使用[listenTo](http://backbonejs.org/#Events-listenTo)更好) – ivarni
@i .on是bind的較新版本,是所有。這不是問題。我只是從SessionListView打印出sessionList(這是一個包含4個對象的集合),但它似乎是空的。難道這些對象在路上的某處丟失了對我頁面上的空白列表負責?我還應該澄清SessionView和SessionListView位於單獨的文件中。 – fowdie