【发布时间】:2012-01-13 00:25:10
【问题描述】:
如何将主干视图绑定到集合而不是模型?我需要将集合包装在模型中吗?
例如
如果我有一个主干模型 Client 和一组称为 Clients 的集合
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() }));
那我可以。这是解决这个问题的正确方法吗?我希望这是一个常见的场景,但我找不到任何例子,我是不是走错了路?
【问题讨论】:
标签: backbone.js