Sencha Touch:采用多重滤镜存储

Sencha Touch : Applying multiple filter to store

本文关键字:滤镜 存储 Touch Sencha      更新时间:2023-09-26

我想在sencha touch中刷新我的列表,基于我的id的多重选择。

我已经根据所选择的id实现了对我的商店的过滤,所以当用户单击每个id时,列表将被刷新,代码如下所示。

control: {
            MaterialscategoryList:{
                itemtap: "refreshList"
        },
refreshList:function (list, index, target, record){
       console.log("record id is " +record.get('id'));
     if(record.get('id') == 1 ){
     Ext.getStore('materialsid').filter('categoryId', '1');
     }else if(record.get('id') == 2 ){
       Ext.getStore('materialsid').filter('categoryId', '2');
     }else if(record.get('id') == 3 ){
       Ext.getStore('materialsid').filter('categoryId', '3');
     }else if(record.get('id') == 4 ){
       Ext.getStore('materialsid').filter('categoryId', '4');
     }else if(record.get('id') == 5 ){
       Ext.getStore('materialsid').filter('categoryId', '5');
     }else if(record.get('id') == 6 ){
       Ext.getStore('materialsid').filter('categoryId', '6');
     }

},

我有一个场景,用户将选择多个id和我想应用过滤器。不知道如何继续。

var store =  Ext.getStore('materialsid');
store.filter(function(record){
   var id =  record.get('categoryId');
   return (id == 1 || id == 2 || id == 3); // you can pass your selected Ids here
});