Sembra che debba essere semplice, proprio non riesco a trovare la risposta.angularjs - filtro per più modelli
Diciamo che ho un array di dati, di cui come il seguente:
friends = [{name:'John', age:60, location:'Brighton', street:'Middle Street'},
{name:'Bob', age:5, location:'Brighton', street:'High Street'}];
Ora, voglio filtrare i dati sulla base di un input di testo in questo modo:
<input ng-model="searchText">
<ul>
<li ng-repeat="friend in friends | orderBy:'name' | filter:searchText">
{{friend.name}} - {{friend.location}}</li>
</ul>
Questo funziona bene ma filtra il testo di input in base a ogni attributo dell'oggetto amico (nome, età, posizione e via). Mi piacerebbe essere in grado di filtrare in base solo al nome e alla posizione (ignorando età e strada). È possibile senza un filtro personalizzato?
Grazie, funziona bene. L'unica cosa che vale la pena menzionare è che avevo bisogno di convertire il testo in minuscolo e aggiungerlo se (! $ Scope.searchText) restituisce 1; per farlo funzionare. – user2424495
Solo per notare- aggiungendo 'if (! $ Scope.searchText) restituisce 1;' farà sì che restituisca tutti i risultati (nessun filtro) se non viene inserito alcun testo di ricerca. Questo è un aspetto positivo di questo approccio rispetto all'approccio che elenco se ne hai bisogno. – KayakDave