1

View应该持有我的Collection(模型),还是Model应该持有?

标准方法是什么?这是一个笼统的问题,我没有具体的应用示例,但答案可能是取决于具体情况吗?

到目前为止,我们的少量工作是模型持有集合。只是阅读有关 Marionette 及其 View 的信息,文档似乎表明 Marionette 假设 View 具有 Collection。

想法?

4

2 回答 2

3

除非集合是该模型的属性或涉及与该模型的关系,否则模型不应包含集合。我假设在您的问题中,当您说集合时,您实际上是指您还谈论的模型的集合。

我推荐的方法是定义一个呈现单个模型的视图,然后定义一个封闭视图,该视图存储集合并为该集合中的每个模型呈现单个视图。

编辑:为清楚起见,当我说封闭时,我的意思是在 DOM 级别,但不在您的定义范围内。

这意味着在您需要时可以轻松地一次性渲染整个集合,但您也可以在集合中添加或修改单个模型,并且只需要渲染该模型的单个视图。

于 2012-11-07T11:26:46.493 回答
1

如果合适的话,视图将包含模型的集合对我来说是有意义的。例如,一个 histogramView 可能包含一个数据点的集合,它有自己的模型数据点。然后 histogramView 可以访问该集合并一次性渲染其中的所有内容。

当然,如果视图只需要拥有一个模型,那也是可以接受的。对于用户配置文件视图,您可能希望该视图拥有一个 userInformationModel。

于 2012-11-07T10:49:16.587 回答