
- 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) 它返回一個包裝物件。 |