2014-11-17 8 views
10

क्या स्मार्ट-टेबल वाले दिनांक फ़ील्ड को खोजने का कोई तरीका है? मुझे तारीखों के बाद बाद में दी गई तारीख को फ़िल्टर करने की आवश्यकता है।स्मार्ट-टेबल और कोणीय के साथ कस्टम खोज को कैसे कार्यान्वित करें

उत्तर

16

आप एक कस्टम (वैश्विक फिल्टर) st-set-filter विशेषता (अभी तक documentented नहीं)

<table st-set-filter="myFilter" st-table="rowCollection"> 
    ... 
</table> 

तब कस्टम फ़िल्टर

myApp.filter('myFilter',[function(){ 
    return function(array, expression){ 
     //an example 
     return array.filter(function(val, index){ 
      return new Date(val.theDateProperty) > new Date(expression.theDateProperty) ; 
     }); 
    } 
}); 

कार्यान्वित करते हैं सेट कर सकते हैं जहां उदाहरण के लिए आप आप की स्थापना की है तालिका में इनपुट

<input type="date" st-search="'theDateProperty'" /> 

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

यह इस बीच में documented कर दिया गया है: आप pull request (18/11/2014) पर मेरी टिप्पणी में अधिक जानकारी के लिए और एक plunker

संपादित मिल जाएगा।

+1

धन्यवाद! मैं आपके कोड का उपयोग करने में सक्षम था। अच्छा काम! – user2543492

+1

- प्लंकर टूटा हुआ है; और तालिका डीओएम से बाहरी रूप से फ़िल्टर करने का कोई तरीका है? http://stackoverflow.com/questions/29261957/angularjs-smart-table-filtering-by-external-control – mg1075

संबंधित मुद्दे

 संबंधित मुद्दे