Angularjs dynamische Filterung

Sagen wir, ich habe Modell:

$scope.items = [{'name: 'test',value:'some value',category:'test'},{name:'value',value:'test',category:'test'}];

Dem iteriert wird:

<div ng-repeat="item in items|filter:search">
{{item.name}} – {{item.value}}
</div>

Haben und ein Eingabe-Feld mit filter Modell:

<input type="text" ng-model="search.$" />

Geben, wenn ich 'test', es zeigt die beiden Datensätze. Ich muss jedoch dynamisch wählen Sie die Eigenschaften des ursprünglichen Objekts, die bei der Suche verwendet werden.

So, ich habe drei Checkboxen (im realen Projekt habe ich mehr Möglichkeiten zu kombinieren):

<input type="checkbox" ng-model="search.name" />
<input type="checkbox" ng-model="search.value" />
<input type="checkbox" ng-model="search.category" />

Und in meinem controller:

$scope.search = {name: true, value: true,category: true};

Dieser zeigt nicht alle Elemente an alle. Aber ich brauche zum filtern der Elemente nach verschiedenen Felder ändern der Einstellungen zur Suche on-the-fly (und die Kombination von Ihnen in verschiedenen Varianten)

Wie ist das möglich?

InformationsquelleAutor Sray | 2014-10-16
Schreibe einen Kommentar