2016-03-19 5 views
1

Ich habe einen Filter auf der JS-Seite von eckigen.Winkelfilter auf zwei Objekte eines Arrays

$filter('filter')($scope.ArrayofUserObjects, {Active: true, ID: passedInValue}); 

HINWEIS - mein Array ist ein Array von Objekten

Lassen Sie uns sagen, dass meine Gruppe 50 aktive Benutzer und 10 inaktive Benutzer hat.

Die passedInValue ist eine inaktive Benutzer-ID. Dieser Filter gibt zur Zeit 0 zurück, da jeder Parameter des Arrays im Wesentlichen && zusammen ist.

Frage ---

Ich mag diese Filter ändern, so dass die Objekte || zusammen sind, was bedeutet, dass der resultierende Filter 51

Ist das möglich zurückkehren würde?

+0

Filter sind Funktionen, so sollten sie in der Lage sein, zurückzukehren, was Sie wollen, aber ich habe Schwierigkeiten zu verstehen, was Sie zu fragen, bedeuten. – Casey

+0

Soll $ scope.array hinzugefügt und das zweite Objekt als Argument übergeben werden? – Gary

+0

Mögliches Duplikat von [Wie man mehrere Werte (ODER-Operation) in angularJS filtert] (http://stackoverflow.com/questions/15868248/how-to-filter-multiple-values-or- operation-in-angularjs) – iambriansreed

Antwort

1

Erstellen Sie Ihre eigenen Filter:

$filter('filter')($scope.ArrayofUserObjects, function(value){return value.Active || value.ID == passedInValue}); 
+0

I Ich musste es an mehr als einer Stelle verwenden, also habe ich es selbst zu einer Funktion gemacht. Danke für die Hilfe. – ZombieCode