If в директиве ng-repeat на Angular.js
Я пытаюсь реализовать if в директиве ng-repeat, но мне тяжело. мой код, который работает сейчас:
<p ng-repeat="list in lists">{{list[id].title}}</p>
Что я хочу сделать, это в основном
<p ng-repeat="list in lists if list[id].selected">{{list[id].title}}</p>
Конечно, во второй строке я получаю сообщение об ошибке. Любые советы по этому поводу?
Спасибо.
Ответы
Ответ 1
Как я написал в комментарии, вы можете использовать фильтры для достижения этого. Вот пример: http://jsfiddle.net/sebmade/ZfGx4/44/
ng-repeat="list in lists | filter:myFilter"
И код фильтра:
$scope.myFilter = function(item) {
return item.selected == true;
};
Изменить:
Я обнаружил, что это можно сделать с помощью встроенного фильтра следующим образом:
ng-repeat="list in lists | filter:{selected: true}"
Ответ 2
Что вам нужно добавить здесь, это фильтр:
<p ng-repeat="list in lists | filter:{selected:true}">test {{list.title}}</p>
Я добавил пример plnkr.