0
A
回答
3
当然。你通常做的是最终使用在集合上应用事件监听器的组合,创建代表每个模型的小型子视图并通过它绑定模型事件处理程序。
BigView = Backbone.View.extend({
el: 'ul', // This view is a <ul> and we'll be adding the model views
initialize: function() {
// This collection represents the collection you passed in
// For our purpose lets say it was a SalesCollection
this.collection.on('reset', this.addAllSales, this);
this.collection.on('add', this.addSale, this);
},
addAllSales: function() {
var that = this;
this.collection.each(function(sale) {
that.addSale(sale);
});
}
addSale: function(model) {
var view = new Subview({
'model': model
});
this.$el.append(view.render().el);
}
});
SaleView = Backbone.View.extend({
initialize: function() {
this.model.on('change', this.something, this);
},
render: function() {
this.$el.html(); // Or whatever else you need to do to represent a sale as view
return this;
}
something: function(model) {
// Code for something
}
});
所以在这个例子中,你基本上有你的主视图有一个集合(例如销售)。当销售收款重置时,它会启动addAllSales()
。每次向集合中添加销售时,我们都会添加一个代表特定模型(销售模型)的子视图。在这个子视图中,我们将绑定事件处理为模型更改,然后执行某些操作。
相关问题
- 1. Backbone.js模型与视图SET
- 2. Backbone.js中的模型和视图
- 3. 在backbone.js中更改视图的模型
- 4. Backbone.js中的访问模型视图
- 5. 视图模型在backbone.js中的绑定
- 6. Backbone.js模型和视图的类图吗?
- 7. backbone.js一个模型被多个视图改变?
- 8. Backbone.js模型未在视图中定义?
- 9. Backbone.js收集多个模型
- 10. 在一个视图中的视图模型/实体或多个视图模型的多个视图?
- 11. Backbone.js的链接模型和视图
- 12. 模型的backbone.js切换视图
- 13. backbone.js模型和视图的结构
- 14. Backbone.js包含集合的模型视图?
- 15. 1个视图中的多个模型?
- 16. 一个视图中的多个模型
- 17. 一个模型backbone.js的多个表格
- 18. 使用backbone.js(多个视图,模型,集合)一次性加载整个模块
- 19. 如何使用backbone.js模型和视图
- 20. Backbone.js + Handlebars.js - {{#each}}而不是模型视图?
- 21. backbone.js /从模型访问视图
- 22. 获取模型数据到视图backbone.js
- 23. Backbone.js - 使用子模型构建视图
- 24. 单一视图中的多个模型
- 25. 视图错误中的多个模型
- 26. 更新视图中的多个模型
- 27. ASP视图中的多个模型
- 28. Backbone.js - 嵌套模型和集合中的多个模型?
- 29. 作为backbone.js视图的多个表行?
- 30. 在多个视图中编辑模型
谢谢。我现在所拥有的东西与给出的代码类似,但是如何将“销售”模型中的记录添加到同一视图? – CodePorter
你的意思是如何将由salesView表示的salesModel添加到拥有该集合的bigView中? – jmk2142
我有两个模型,销售和帐户都有一个字段“名称”。我希望有一个列表视图,其中一列显示名称,第二列显示部门。对不起,如果问题不明确。 – CodePorter