Ext.util.MixedCollection 用法

來源:互聯網
上載者:User

看extjs源碼發現有很多MixedCollection, 它一個Collection類,既包含了數字索引也包含了key,並暴露了相關事件。它相當於java裡的map和list,有四個事件:添加元素add、刪除元素remove、替換元素replace、清空集合clear

(一)看看它是怎麼用的


1 // 一般方法
2 var mc = new Ext.util.MixedCollection();
3 mc.add(someEl.dom.id, someEl);
4 mc.add(otherEl.dom.id, otherEl);
5 //等等
6
7 // 使用getKey
8 var mc = new Ext.util.MixedCollection();
9 mc.getKey = function(el){
10 return el.dom.id;
11 };
12 mc.add(someEl);
13 mc.add(otherEl);
14
15 // 或者通過構造器
16 var mc = new Ext.util.MixedCollection(false, function(el){
17 return el.dom.id;
18 });
19 mc.add(someEl);
20 mc.add(otherEl);
 
 1 // 一般方法
2 var mc = new Ext.util.MixedCollection();
3 mc.add(someEl.dom.id, someEl);
4 mc.add(otherEl.dom.id, otherEl);
5 //等等
6
7 // 使用getKey
8 var mc = new Ext.util.MixedCollection();
9 mc.getKey = function(el){
10 return el.dom.id;
11 };
12 mc.add(someEl);
13 mc.add(otherEl);
14
15 // 或者通過構造器
16 var mc = new Ext.util.MixedCollection(false, function(el){
17 return el.dom.id;
18 });
19 mc.add(someEl);
20 mc.add(otherEl);

(二)添加調用add方法即可,addAll方法用來添加一個個Array或者Object,如果 建構函式的allowFunctions被設定為true,那麼函數引用也將被添加到集合中。

(三)取值會用到四個方法,item方法返回綁定到所傳遞的key或者index的項目。 key的優先順序比index高。這與首先調用key 等價,然後如果沒有項目匹配時調用 itemAt。 即它們的優先順序是item (String/Number key) 、key(String/Number key) ->get(Number index) ->itemAt(Number index)

(四)比較常用的方法each、contains、remove等等等

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.