模型和集合到 Backbone 中的一个视图
Posted
技术标签:
【中文标题】模型和集合到 Backbone 中的一个视图【英文标题】:model and collection to one view in Backbone 【发布时间】:2013-02-26 12:29:57 【问题描述】:作为 Backbone.js 的新手,我想问一个普遍而简单的问题。在我的应用程序中,我需要创建一个新视图,其中包含一个集合和一个模型。
var myView = new SomeView(
model: myModel,
collection: myCollection,
el:$('#main_content'));
);
有趣的是,我把我的东西弄好了。你认为它是否适合骨干的概念,还是什么?
谢谢你..
【问题讨论】:
将模型和集合提供给视图没有任何问题。但是,我会对整体架构持怀疑态度。为什么视图需要模型和集合?在大多数情况下,拆分视图会更好。 【参考方案1】:没有理由不能这样做,但这有点令人困惑。通常,您可以从视图的名称推断模型或集合的类型。例如,EmployeeListView
的 collection
可能是 EmployeeCollection
,model
或 CompanyView
很可能是 Company
。
但是当你同时有一个模型和一个集合时,意思就不清楚了。在这种情况下,我会更有意义地命名参数。 model
和 collection
属性只是约定 - 骨干视图也不需要。
假设您有一个显示Company
的视图,它是Employee
s:
var CompanyEmployeesView = Backbone.View.extend(
initialize: function(options)
this.company = options.company;
this.employees = options.employees;
);
var view = new CompanyEmployeesView(
company: company,
employees: employeesCollection
);
【讨论】:
以上是关于模型和集合到 Backbone 中的一个视图的主要内容,如果未能解决你的问题,请参考以下文章
在 Backbone 应用程序中,按照惯例,模型、视图和集合的工作是啥