मैं बूलियन संपत्ति के मूल्य के आधार पर कुछ सूची आइटम को फ़िल्टर करने का प्रयास कर रहा हूं, लेकिन कोई फर्क नहीं पड़ता कि मैं पूरी सूची हमेशा प्रदर्शित करता हूं। मेरे द्वारा आजमाई गई कुछ चीजें इतनी टूट गई हैं कि कुछ भी प्रदर्शित नहीं होता है, लेकिन यह न तो यहां है और न ही है। मैं अपना फ़िल्टरिंग इच्छानुसार काम नहीं कर सकता:
$scope.attendees = [
{"firstname":"Steve", "lastname":"Jobs", "arrived":true, "id":1}
,{"firstname":"Michelle", "lastname":"Jobs", "arrived":false, "id":2}
,{"firstname":"Adam", "lastname":"Smith", "arrived":true, "id":3}
,{"firstname":"Megan", "lastname":"Smith", "arrived":false, "id":4}
,{"firstname":"Dylan", "lastname":"Smith", "arrived":false, "id":5}
,{"firstname":"Ethan", "lastname":"Smith", "arrived":false, "id":6}
];
निम्नलिखित एनजी-रिपीट फ़िल्टरिंग का उपयोग करना:
<ul>
<li ng-repeat="person in attendees track by person.id | filter:arrived:'false'">
{{person.lastname}}, {{person.firstname}}
</li>
</ul>
मुझे लगता है कि मैंने प्रत्येक क्रमांकन की कोशिश की है जिसे मैं संदर्भित पा सकता हूं, जिनमें से अधिकांश विभिन्न स्टैकऑवरफ़्लो खोज परिणामों से आए थे:
filter:'arrived'filter:arrivedfilter:'person.arrived'filter:person.arrivedfilter:{arrived:true}filter:{arrived:'true'}filter:{person.arrived:true}filter:{person.arrived:'true'}
मैंने एक कस्टम फ़िल्टर फ़ंक्शन बनाने की भी कोशिश की है:
$scope.isArrived = function(item) {
return item.arrived;
};
और इस प्रकार इसे लागू करना:
filter:isArrivedfilter:'isArrived'filter:{isArrived(person)}filter:isArrived(person)filter:'isArrived(person)'
इनमें से कोई भी काम नहीं करता है। मैं क्या खो रहा हूँ?
trackBy: ..और सामान्य रूप से "हर चीज की तरह" काम किया जाए।