- BackboneJS 教程
- BackboneJS - 首页
- BackboneJS - 概述
- BackboneJS - 环境设置
- BackboneJS - 应用
- BackboneJS - 事件
- BackboneJS - 模型
- BackboneJS - 集合
- BackboneJS - 路由器
- BackboneJS - 历史记录
- BackboneJS - 同步
- BackboneJS - 视图
- BackboneJS - 工具
- BackboneJS 有用资源
- BackboneJS - 快速指南
- BackboneJS - 资源
- BackboneJS - 讨论
BackboneJS - 集合
集合是有序的模型集。我们只需要扩展 Backbone 的集合类来创建我们自己的集合。在集合中,触发模型上的任何事件也会直接触发集合上的事件。这允许您监听集合中任何模型中特定属性的更改。
下表列出了您可以用来操作 BackboneJS 集合的所有方法:
序号 | 方法和描述 |
---|---|
1 |
extend
扩展 Backbone 的集合类以创建集合。 |
2 |
model
要指定模型类,我们需要覆盖集合类的 model 属性。 |
3 |
initialize
当创建模型实例时,通过在创建集合时定义 initialize 函数来调用它。 |
4 |
models
在集合内创建的模型数组。 |
5 |
toJSON
使用 JSON 格式返回集合中模型属性的副本。 |
6 |
sync
它表示模型的状态,并使用 Backbone.sync 来显示集合的状态。 |
7 |
add
向集合中添加模型或模型数组。 |
8 |
remove
从集合中删除模型或模型数组。 |
9 |
reset
它重置集合并使用新的模型数组填充,或者清空整个集合。 |
10 |
set
它用于使用模型中的一组项目更新集合。如果找到任何新模型,则项目将添加到该模型中。 |
11 |
get
它用于使用id 或 cid从集合中检索模型。 |
12 |
at
使用指定的索引从集合中检索模型。 |
13 |
push
它类似于 add() 方法,它获取模型数组并将模型推送到集合中。 |
14 |
pop
它类似于 remove() 方法,它获取模型数组并从集合中删除模型。 |
15 |
unshift
在集合的开头添加指定的模型。 |
16 |
shift
它删除集合中的第一个项目。 |
17 |
slice
显示集合模型中元素的浅拷贝。 |
18 |
length
计算集合中模型的数量。 |
19 |
comparator
它用于对集合中的项目进行排序。 |
20 |
sort
对集合中的项目进行排序,并使用 comparator 属性来对项目进行排序。 |
21 |
pluck
从集合中的模型中检索属性。 |
22 |
where
它用于使用集合中匹配的属性来显示模型。 |
23 |
findWhere
它返回与集合中指定的属性匹配的模型。 |
24 |
url
它创建集合的实例并返回资源所在的位置。 |
25 |
parse
通过响应对象传递集合的数据并以 JSON 格式表示数据。 |
26 |
clone
它返回指定对象的浅拷贝。 |
27 |
fetch
它使用 sync 方法从集合中的模型中提取数据。 |
28 |
create
它在集合中创建模型的新实例。 |
Underscore 方法
下表列出了Underscore.js方法,这些方法提供了其功能以在Backbone.Collection上使用。
序号 | 方法和描述 |
---|---|
1 |
_.each(list, iteratee, [context]) 使用 iteratee 函数迭代集合中的每个元素。 |
2 |
_.map(list, iteratee, [context]) 它映射每个值并使用iteratee函数将它们显示在新值数组中。 |
3 |
_.reduce(list, iteratee, memo, [context]) 它将值列表减少为单个值,也称为inject和foldl。 |
4 |
_.reduceRight(list, iteratee, memo, [context]) 它是reduce的右结合版本。 |
5 |
_.find(list, predicate, [context]) 它查找每个值并返回第一个通过谓词或测试的值。 |
6 |
_.filter(list, predicate, [context]) 它过滤每个值并返回通过谓词或测试的值数组。 |
7 |
_.reject(list, predicate, [context]) 它返回列表中未通过预测值的所有元素。 |
8 |
_.every(list, predicate, [context]) 如果列表中的元素通过预测值,则返回 true。 |
9 |
_.some(list, predicate, [context]) 如果列表中的元素通过预测值,则返回 true。 |
10 |
_.contains(list, value, [fromIndex]) 如果列表中存在值,则返回 true。 |
11 |
_.invoke(list, methodName, *arguments) 它使用列表中每个值的methodName()调用方法名称。 |
12 |
_.max(list, [iteratee], [context]) 它指定列表中的最大值。 |
13 |
_.min(list, [iteratee], [context]) 它指定列表中的最小值。 |
14 |
_.sortBy(list, [iteratee], [context]) 它使用列表中的迭代器按升序返回排序的元素。 |
15 |
_.groupBy(list, [iteratee], [context]) 它将集合值划分为集合,并使用列表中的iteratee进行分组。 |
16 |
_.shuffle(list) 它返回列表的随机排列副本。 |
17 |
_.toArray(list) 它定义列表的数组。 |
18 |
_.size(list) 它定义列表中的值的数量。 |
19 |
_.first(array, [n]) 它指定列表中数组的第一个元素。 |
20 |
_.initial(array, [n]) 它返回所有内容,但指定列表中数组的最后一个条目。 |
21 |
_.last(array, [n]) 它指定列表中数组的最后一个元素。 |
22 |
_.rest(array, [index]) 它定义数组中剩余的元素。 |
23 |
_.without(array, *values) 它返回列表中删除的所有实例的值。 |
24 |
_.indexOf(array, value, [isSorted]) 如果在指定索引处找到该值,则返回该值;如果未找到,则返回 -1。 |
25 |
_.indexOf(array, value, [fromIndex]) 它返回数组中值的最后一次出现,如果未找到,则返回 -1。 |
26 |
_.isEmpty(object) 如果列表中没有值,则返回 true。 |
27 |
_.chain(obj) 它返回一个包装对象。 |