2014-10-10 91 views
0

現在,我有一個商店這就需要remoteFilter: true結合遠程濾波器和局部濾波器

Ext.getStore("AccessRuleStore").addFilter([ 
    new Ext.util.Filter({ 
     id:'from', 
     property: 'from', 
     value : Ext.getCmp("ruleFrom").getValue() 
    }), 
    new Ext.util.Filter({ 
     id:'to', 
     property: 'to', 
     value : Ext.getCmp("ruleTo").getValue() 
    }) 
]); 

addFilter自動閃光的呼叫服務器,其中fromto被用來計算規則發送到客戶端,因爲只有服務器知道哪個fromto值符合哪個規則(出於某種原因,fromto值的列表無法向客戶端公開)。

另一方面,規則可以是活動的或不活動的,並且指示布爾總是傳輸給客戶端。現在我想添加一個複選框「僅顯示活動規則」,它在客戶端過濾(rule.get("active")===true)的規則。

這是可能的,以及如何?每當我向商店添加過濾器時,商店都認爲它是遠程過濾器,並要求服務器執行什麼操作...

回答

0

您可以使用僅執行本地過濾器的store.filterBy

E.g.

rulesStore.filterBy(function (rule) { 
    return rule.get('active'); 
});