javascript अशुद्ध - FilterBy()का उपयोग करके फ़िल्टर को लागू करने पर एक्स्टजे स्टोर से फिल्टर को साफ करने का सबसे तेज़ तरीका




पानी उपाय (4)

मैं एक्स्टजेएस 4.1 का प्रयोग कर रहा हूं। स्टोर से फिल्टर को निकालने के लिए मैं स्टोर्स की clearFilter() का उपयोग कर रहा हूं। मैं filterBy विधि का उपयोग कर स्टोर में फिल्टर लागू कर रहा हूँ मैं सभी अभिलेखों को फ़िल्टर कर रहा हूं जहां नाम रोनाल्डो नहीं है

फ़िल्टर साफ़ करने के बाद, मैं एक दृश्य लोड करता है जिसमें एक ग्रिड (स्टोर से जुड़ा हुआ) होता है। लेकिन जब मैं ग्रिड लोड करता हूं, तब भी मैं देख सकता हूं कि फ़िल्टर साफ़ नहीं होता है। स्टोर स्थानीय स्टोर है। मैंने दुकान पर कोई समूहिंग लागू नहीं किया है। स्टोर केवल एक मॉडल का उपयोग कर रहा है।

myStore.filterBy(function (record) {
    if (record.get('Name') != 'Ronaldo') {
        return true;
    }
});

जब यह सब ठीक काम कर रहा है, लेकिन जब मैं clearFilter() का उपयोग कर फ़िल्टर को साफ़ करता हूं, तो यह कुछ समय ले रहा है। क्या filterBy() का प्रयोग करके फिल्टर को लागू किया जाता है, जब किसी दुकान पर फ़िल्टर को साफ़ करने के लिए कोई तेज़ और बेहतर \ सही तरीका है?


Answers

बस एक कॉल करें:

myStore.reload();

जब भी आप filterBy का उपयोग कर एक फिल्टर सेट को निकालना चाहते हैं


फ़िल्टर को साफ करने के लिए मेरा सबसे अच्छा जवाब है, फ़ंक्शन:

 myStore.filterBy(function (record) {
                return true;
        });

मैंने अभी ऐसा किया, आशा है कि इसकी मदद करना


जब आप clearFilter() उपयोग करते हैं, तो यह clearFilter() नहीं पड़ता है यदि आपने filter() या filter() या फ़िल्टर को स्टोर पर कॉन्फ़िगर किया था।

जब आप फ़िल्टर साफ़ करते हैं तो ये क्या होता है:

  1. दुकान पर फिल्टर का संग्रह साफ़ कर दिया गया है
  2. फ़िल्टर्ड डेटा को मूल (अनफ़िल्टर्ड) डेटा से बदल दिया गया है जो स्नैपशॉट में संग्रहीत किया गया था
  3. स्टोर पर "आंकड़े" और "ताज़ा करें" घटनाएं निकाल दी जाती हैं

ध्यान दें कि आप clearFilter(true) का उपयोग करके घटनाओं को निकाल सकते हैं जो उपयोगी हो सकते हैं यदि आप मौजूदा फ़िल्टर को साफ़ करने के बाद फिर से स्टोर करना चाहते हैं

यदि स्टोर के फिल्टर को साफ करने से धीरे धीरे काम करता है तो यह संभवतः लेआउट प्रक्रिया से संबंधित होता है (आपके ग्रिड पर या जो भी आप स्टोर से उपयोग कर रहे हैं) जो चरण 3 से शुरू हो रहा है

इसके अलावा डॉक्स या स्रोत कोड देखें


क्या आपने जीडब्ल्यूटी (Google वेब टूलकिट http://code.google.com/webtoolkit/ ) के बारे में सोचा है?





javascript extjs extjs4.1 extjs-stores