जैसा कि @Maxim Shoustin ने सुझाव दिया, जो आप चाहते हैं उसे प्राप्त करने का सबसे अच्छा तरीका एक कस्टम फ़िल्टर का उपयोग करना होगा।
लेकिन अन्य तरीके भी हैं, उनमें से एक का उपयोग ng-if
उसी तत्व पर निर्देश का उपयोग करने के लिए किया जा रहा है जैसे कि आपने ng-repeat
निर्देश दिया है (यहां, प्लंकर भी ):
<ul>
<li ng-repeat="player in players" ng-if="player.name_key!='FirstPerson'"></li>
</ul>
यह एक एस्थेटिक दृष्टिकोण से एक मामूली नुकसान पेश कर सकता है, लेकिन इसका एक बड़ा फायदा यह है कि आपका फ़िल्टरिंग एक ऐसे नियम पर आधारित हो सकता है जो players
सरणी के लिए तंग युग्मित नहीं है और जो आपके ऐप के दायरे में अन्य डेटा तक आसानी से पहुंच सकता है:
<li
ng-repeat="player in players"
ng-if="app.loggedIn && player.name != user.name"
></li>
अद्यतन
जैसा कि कहा गया है, यह इस तरह की समस्या के समाधान में से एक है और आपकी आवश्यकताओं के अनुरूप हो भी सकता है और नहीं भी।
जैसा कि टिप्पणियों में बताया गया है, ng-if
एक निर्देश है, जिसका वास्तव में मतलब है कि यह पृष्ठभूमि में अधिक चीजें कर सकता है जितना आप उम्मीद कर सकते हैं।
उदाहरण के लिए, ng-if
यह माता-पिता से एक नया क्षेत्र बनाता है :
एनजीआईएफ के भीतर बनाया गया दायरा प्रोटोटाइप पैतृक विरासत का उपयोग करके अपने मूल दायरे से विरासत में मिला है।
यह आमतौर पर सामान्य व्यवहार को प्रभावित नहीं करता है लेकिन अप्रत्याशित मामलों को रोकने के लिए, आपको इसे लागू करने से पहले ध्यान में रखना चाहिए।