Ich versuche zu vermeiden, den gleichen Filter für die gleiche Sammlung mehrmals in AngularJS-Anwendung zu verwenden.Vermeiden Sie mehrfache Verwendung eines Filters in AngularJs
Was ist der richtige Weg, es zu tun:
<div ng-app="myApp" ng-controller="PeopleCtrl">
<ul ng-init="(person in people|filter:{show:true}) as myPeople" ng-if="myPeople.length>0">
<h4>My People</h4>
<li ng-repeat="person in myPeople">{{person.name}}; display: {{person.show}};
</ul>
</div>
Wenn ich (person in people|filter:{show:true}) as myPeople
verwende ich versuche einen Alias zu verwenden, um nicht die gleichen Filter zu wiederholen {show:true}
überall ...
können Sie alle Filter, die Sie tun möchten, detailliert, ich sehe nur eine Filterung hier. – Walfrat
Ich versuche nicht zu wiederholen '(Person in Personen | Filter: {show: true})' überall – Serge
Wenn Sie die gleiche gefilterte Version einer Liste häufig zeigen müssen, ist die performanteste Möglichkeit, eine gefilterte Version der myPeople zu erstellen Array innerhalb des Controllers und enthalten * das * in Ihrer Vorlage. –