首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Backbone.js集合

Backbone.js集合
EN

Stack Overflow用户
提问于 2011-07-22 12:51:01
回答 3查看 737关注 0票数 0

我是backbone.js的初学者

为什么要使用集合呢?

不能只有一个视图与每个模型相关联吗?

另外,绑定到模型集合的事件是否适用于所有模型?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-07-23 02:20:24

当您在大型数据集上操作时,非常有必要拥有一种在整个数据集或子集上执行操作的机制。在Backbone.js集合中,类提供了这种机制。Collection的几个非常常见的用法可以概括如下:

  • 假设您正在从数据库中获取查询结果。现在您可以创建一个对应于记录结构的模型,定义一个集合,创建一个集合实例,定义url (如果需要,还可以自定义ajax请求),然后调用fetch。这对于拥有一个模型数组更有利:首先,它比遍历解析的json数据结构并从每个记录对象创建一个模型更方便。其次,整个集合可以一次更新到服务器。正如Mario所指出的,它使得处理相关记录变得非常方便。
  • 其次,Collection类提供了一个基类,你可以很容易地用你的函数来辅助这个基类,以提供自定义的过滤和排序capabilities.
  • You可以有视图,例如。表示集合的数据网格、树等。编写代码和考虑表示集合的视图都很方便。
票数 2
EN

Stack Overflow用户

发布于 2011-07-22 14:00:33

您可以在具有嵌套模型时使用它们,请参见http://documentcloud.github.com/backbone/#FAQ-nested

我猜你可以有一个与每个模型相关联的视图,但不一定。不确定最后一部分,也许可以快速测试一下。

票数 1
EN

Stack Overflow用户

发布于 2011-07-23 01:31:28

您可以使用集合来表示一对多关系。当你的后端数据存储是一个文档数据库(有嵌入的文档)时,这种类型的东西是完美的。

您还可以使用集合来允许在模型上进行迭代。

由于模型只能属于单个集合,因此有时将集合视为数据库中的表几乎是有意义的。在数据库中,我有一个people表。在我的javascript中,我有一个people集合。

(模型只能属于单个集合的原因是,在将模型添加到集合时,集合直接在模型上存储对其自身的引用。将模型添加到第二个集合将覆盖模型对第一个集合的引用。)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6785787

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档