在 sencha touch 中存储过滤器(多项)

Store filter in sencha touch (multiple items)

看到这个问题,我想更进一步

首先,我过滤 table(目前有效):

然后我会根据第一个table的过滤器过滤另一个table。

结果将是:

或(例如):

现在我测试了类似的东西:

TABLEVIEWSTORE1.filter("name", name);

   TABLEVIEWSTORE1.load({callback: function (){
       tableviewstore2.load({callback: function (){

       TABLEVIEWSTORE1.each(function(item){
           tableviewstore2.filterBy(function(record,id){
               return record.get("number") == item.get("number");
           }, this);
       });

        TABLEVIEWSTORE1.load({callback: function (){
            tableviewstore2.load({callback: function (){
                    // DO MORE THINGS
            }});
        }});
           }});

    }});
});

有人知道它如何正常工作吗?

首先,我们应该从第一个筛选的商店中找到所有唯一编号。 然后,我们应该根据这些唯一数字数组过滤第二家商店。 为此,我们将使用 Ext.Array

var uniqueNumbers= [];       
    TABLEVIEWSTORE1.each(function(item){
             Ext.Array.include(uniqueNumbers,item);
    });
    tableviewstore2.filterBy(function(record){
                   return Ext.Array.contains(uniqueNumbers,record.get("number"));
               });