collection就是一堆model的集合,這個集合就是個舞台,可以放乙個人說單口相聲,也可以對口,也可以群口,,,
在前文,也就是入門系列3的基礎上,新增js**
var notecollection=backbone.collection.extend();
var note1=new note();//設定id,表明唯一性
var note2=new note();
var note3=new note();
執行
length為0,表明「舞台」上是空的
1.現在要往集合裡新增東西
首先在例項化時新增,
新增了note1,和note2,這時候length為2.
建立集合後,還可以往集合裡新增模型
通過add可以新增,可以單獨新增,如notecollection.add(note1),也可以多個一起新增,傳入乙個陣列,如notecollection.add([note2,note3])
如果新增的已經存在,預設忽略
如果再加乙個merge:true引數,則修改原有模型,直接新增,如:notecollection.add(),在前面指定note模型上進行建立
2. 刪除模型
移除指定模型 remove 如,notecollection.remove(note1),返回移除後的集合
清空模型或替換 reset 引數空為清空,有引數則為用引數替換已有引數。如notecollection.reset([note1,note2])//用1,2替換2,3
pop()無引數 刪除最後乙個模型 返回刪除的那個模型
shift()無引數,刪除第乙個模型,返回刪除的那個模型
3.其他新增模型方法
push().引數為新增的模型,追加模型,返回所追加模型
unshift().在最前面新增模型,返回新新增的模型
add(),兩個引數,第乙個為要新增的模型,第二個為,num為索引號,索引號從0開始
4.集合相關事件
var notecollection = backbone.collection.extend(,
'remove': function(model, collection, options) ,
'change': function(model, options)
});}
});對集合的各種方法進行處理
5.更好的新增方法
set()集合引數存在即更新,不存在則新增,引數裡沒有單原有,則刪除。
如果不刪除則新增其他引數
6.得到模型
get()引數為id號
add()引數為索引號,從0開始
7.集合檢視
集合檢視就是讓舞台上好多人一起上電視,給集合建立乙個檢視,把每乙個模型的檢視都放在這裡面。
首先準備乙個集合檢視,
var notecollectionview = backbone.view.extend()設定el屬性為無序列表ul
然後我們要把每個模型渲染後的結果新增到這個檢視中。
那麼先建立乙個集合檢視的例項
var notecollectionview = new notecollectionview();//指定集合為notecollection
這個集合我們先前建立好了
其中模型為
var note = backbone.model.extend(,
initialize: function() );
this.on('change:title', function(model, options) );
this.on('invalid', function(model, error) )
},validate: function(attributes, options)
}});
三個模型的例項
var note1 = new note();
var note2 = new note();
var note3 = new note();
集合為var notecollection = backbone.collection.extend(,
'remove': function(model, collection, options) ,
'change': function(model, options)
});}
});把模型例項放在集合例項中
var notecollection = new notecollection([note1, note2, note3]);
然後在集合檢視中新增渲染
render: function() ,
定義addone
修改單個檢視
var noteview = backbone.view.extend(,
template: _.template(jquery('#list-template').html()),
render: function()
});新增集合檢視,初始化
initialize: function() ,
執行一下
接下來把這些在介面顯示出來
在html中新增**
再到控制台
介面顯示
集合檢視原始碼
4 集合與有序集合
特性 無序 隨機操作 唯一性,確定性 zrevrange key start stop 將集合降序排列,取在start,stop 之間的元素 zrangebyscore key min max withscore limit offset n 將score在 min,max 之間的元素跳過offse...
scala基礎4 集合
map set list 集合 可變集合可以在適當的地方被更新或擴充套件,意味著你可以修改 新增 移除乙個集合的元素。而不可變集合類,相比之下,永遠不會改變。不過,你仍然可以模擬新增,移除或更新操作。但是這些操作都將返回乙個新的集合,同時原來的集合不發生改變。不可變的都在immutable裡,可變的...
ue4集合型別 UE4 集合 TSet容器
一 tset是什麼 ue4中,除了tarray動態陣列外,還提供了各種各樣的模板容器。這一節,我們就介紹集合容器 tset。類似於tarray,尖括號裡面的t是模板型別,可以是任何c 型別。乙個集合表示了一組互不重複的資料元素。比如tset表示了一組float集合,tset表示了一組fstring集...