2016-05-17 3 views
3

При использовании ng-repeat я хочу фильтровать объект по двум значениям (имя и описание). Я хочу отфильтровать этот массив таким образом, если в любом значении ключа в поиске он вернет его. Когда я пытаюсь это сделать filter:{info:{name:search, description:search}}, результат получается тогда, когда значение из поиска равно в обоих.Угловой фильтр по нескольким свойствам и показать, если любое значение равно запросу

+0

Просьба сделать вопрос более понятным. У вас есть окно поиска и основывается на вводе там, где вы хотите отфильтровать значения 'ng-repeat'? –

+0

Да, у меня есть вход для поиска, и я хочу использовать только один. – Przemek

+0

У вас есть окно поиска и на его основе вы хотите контролировать значения в ng-repeat, правильно? «У меня есть вход для поиска» - я не понимаю. –

ответ

1

Хорошо, основываясь на том, что я смог понять. Хотя я не уверен, что это то, что вы хотели, если не сообщите мне, и я удалю этот ответ.

Предположим, у вас есть объект, который имеет значения в этом формате, который вы подаете до ng-repeat.

$scope.inputobject = [ 
    {name: 'xyz', description: 'hadhash'}, 
    {name: 'uza', description: 'hadhahdh'}, 
    {name: 'aaa', description: 'hadhahas'} 
    ]; 

Это наша часть HTML, добавьте контроллер и все, я надеюсь, что это не проблема.

<input type="text" placeholder="search" ng-model="objectsearch"> 
<div ng-repeat="x in inputobject | filter:{name:objectsearch}"> 
<div> 
{{x.name}} {{x.lastname}} 
</div> 
</div> 

Теперь фильтр будет происходить только на основе первого ввода. Ура!

Смежные вопросы