如何將骨幹視圖綁定到集合而不是模型?我是否需要將模型中的集合包裝起來?爲集合創建骨幹視圖
例如
如果我有一個骨幹模型客戶,並且這些客戶稱爲
Client = Backbone.Model.extend({
defaults: {
Name: ''
}
});
Clients = Backbone.Collection.extend({
model: Client,
url: 'Clients'
});
和視圖
var ClientListView = Backbone.View.extend({
template: _.template($("#clients-template").html()),
el: $('#clientlist'),
initialize: function() {
_.bindAll(this, 'render');
this.collection = new Clients();
},
render: function(event){
$(this.el).html(this.template({ this.collection.toJSON()));
return this;
}
});
我就不能在下劃線模板訪問每一個客戶元素的集合。然而,如果我包裝這樣的集合
$(this.el).html(this.template({ clients: this.collection.toJSON() }));
然後我可以。這是正確的方式去做這件事嗎?我期望這是一個常見的情況,但我找不到任何例子,我是否以錯誤的方式去做?
在最後一個例子中,你需要'var this = this;'在initialize方法的頂部嗎? – dubilla 2013-09-19 17:13:00
@dubilla不,主幹將代碼下劃線方法的上下文設置爲'this'。 – EleventyOne 2013-10-14 02:13:19
爲什麼'this._donutViews = [];'有一個下劃線字符? – fortuneRice 2013-10-17 04:28:11