दिलचस्प पोस्ट
जब आप git विलय के बजाय git रिज का उपयोग करते हैं? मोमेंट जेएस में दो तिथियों के बीच घंटों का अंतर प्राप्त करें कैसे लहजे को हटा दें और अक्षरों को "सादे" ASCII वर्णों में बदलें? मैं जावास्क्रिप्ट में स्ट्रिंग को बूलियन में कनवर्ट कैसे कर सकता / सकती हूं? एंड्रॉइड में सिग्नलर्स का उपयोग कैसे करें सी # में एचटीएमएल ईमेल का निर्माण एंड्रॉइड में वर्तमान स्मृति का उपयोग कैसे करें? एक तेज़ ऑपरेशन क्या है, पुन: मिलान / खोज या str.find? क्या मैं नीला वेब साइट पर फाइल सिस्टम लिख सकता हूं? क्रोम डेवलपर उपकरण में स्रोत के लिए स्टेटस = रद्द क्या होता है? एक MySQL तालिका में डालें या अपडेट करें सी ++ में संकलन-समय स्ट्रिंग्स को आसान ढंग से घोषित करना सीतनिद्रा में झरना और उलटा बीच में अंतर क्या है, वे किस लिए उपयोग किया जाता है? सी ++ में एफटीएफ का इस्तेमाल करते हुए ऑडियो स्पेक्ट्रम कैसे उत्पन्न करें? जावा 8 स्ट्रीम की .min () और .max (): यह संकलन क्यों करता है?

कोणीय जेएस में ऑब्जेक्ट प्रॉपर्टी से कैसे फ़िल्टर करें

मैं AngularJS में एक कस्टम फ़िल्टर बनाने का प्रयास कर रहा हूं जो एक विशिष्ट संपत्ति के मूल्यों के अनुसार ऑब्जेक्ट की एक सूची को फ़िल्टर करेगा। इस मामले में, मैं "ध्रुवीय" संपत्ति ("सकारात्मक", "तटस्थ", "नकारात्मक" के संभावित मानों) द्वारा फ़िल्टर करना चाहता हूं।

फिल्टर के बिना मेरा कामकाजी कोड यहां है:

HTML:

<div class="total"> <h2 id="totalTitle"></h2> <div>{{tweets.length}}</div> <div id="totalPos">{{tweets.length|posFilter}}</div> <div id="totalNeut">{{tweets.length|neutFilter}}</div> <div id="totalNeg">{{tweets.length|negFilter}}</div> </div> 

यहां JSON प्रारूप में "$ scope.tweets" सरणी है:

 {{created_at: "Date", text: "tweet text", user:{name: "user name", screen_name: "user screen name", profile_image_url: "profile pic"}, retweet_count: "retweet count", polarity: "Positive"}, {created_at: "Date", text: "tweet text", user:{name: "user name", screen_name: "user screen name", profile_image_url: "profile pic"}, retweet_count: "retweet count", polarity: "Positive"}, {created_at: "Date", text: "tweet text", user:{name: "user name", screen_name: "user screen name", profile_image_url: "profile pic"}, retweet_count: "retweet count", polarity: "Positive"}} 

सबसे अच्छा फिल्टर के रूप में मैं इस प्रकार के साथ आ सकता है:

 myAppModule.filter('posFilter', function(){ return function(tweets){ var polarity; var posFilterArray = []; angular.forEach(tweets, function(tweet){ polarity = tweet.polarity; console.log(polarity); if(polarity==='Positive'){ posFilterArray.push(tweet); } //console.log(polarity); }); return posFilterArray; }; }); 

यह विधि एक खाली सरणी देता है। और "console.log (polarity)" स्टेटमेंट से कुछ भी छपा नहीं है ऐसा लगता है कि मैं "पैरारिटी" की ऑब्जेक्ट प्रॉपर्टी तक पहुंचने के लिए सही पैरामीटर नहीं डाल रहा हूं।

कोई विचार? आपके उत्तर की बहुत सराहना की जाती है

वेब के समाधान से एकत्रित समाधान "कोणीय जेएस में ऑब्जेक्ट प्रॉपर्टी से कैसे फ़िल्टर करें"

आपको केवल filter फिल्टर का उपयोग करना होगा ( दस्तावेज देखें):

 <div id="totalPos">{{(tweets | filter:{polarity:'Positive'}).length}}</div> <div id="totalNeut">{{(tweets | filter:{polarity:'Neutral'}).length}}</div> <div id="totalNeg">{{(tweets | filter:{polarity:'Negative'}).length}}</div> 

बेला

दस्तावेज़ीकरण का पूरा जवाब है वैसे भी यह कैसे किया जाता है:

 <input type="text" ng-model="filterValue"> <li ng-repeat="i in data | filter:{age:filterValue}:true"> {{i | json }}</li> 

data एरे में केवल age को फ़िल्टर करेगा और सही मिलान के लिए सही होगा।

गहरी फ़िल्टरिंग के लिए,

 <li ng-repeat="i in data | filter:{$:filterValue}:true"> {{i}}</li> 

$ गहरे फिल्टर के लिए एक विशेष संपत्ति है और सही ऊपर की तरह सटीक मिलान के लिए है

आप इसे और अधिक गतिशील बनाने के लिए भी ऐसा कर सकते हैं।

 <input name="filterByPolarity" data-ng-model="text.polarity"/> 

तब आप एनजी-दोहराना इस तरह दिखेंगे

 <div class="tweet" data-ng-repeat="tweet in tweets | filter:text"></div> 

यह फिल्टर निश्चित रूप से केवल ध्रुवीकरण द्वारा फ़िल्टर करने के लिए इस्तेमाल किया जाएगा

आप यह कोशिश कर सकते हैं इसके लिए मेरे काम 'नाम' arr में एक संपत्ति है

 repeat="item in (tagWordOptions | filter:{ name: $select.search } ) track by $index 

हमारे नीचे संग्रह है:
यहां छवि विवरण दर्ज करें

सिंटैक्स: {{(Collection/array/list | filter:{Value : (object value)})[0].KeyName}}
उदाहरण: {{(Collectionstatus | filter:{Value:dt.Status})[0].KeyName}}
या
सिंटेक्स: ng-bind="(input | filter)"
उदाहरण: ng-bind="(Collectionstatus | filter:{Value:dt.Status})[0].KeyName"