商店滤波器(多个项目)
问题描述:
我看到这个问题,我想更进一步 https://*.com/questions/18606212/store-filter-in-sencha-touch#=商店滤波器(多个项目)
现在我测试的是这样的:
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"));
});
它的工作原理。非常感谢你:) 我只改变了 Ext.Array.include(uniqueNumbers,item.get(“number”)); – kadddah