15

I am trying to implement an if into a ng-repeat directive but I am having a hard time. my code which work for now is:

<p ng-repeat="list in lists">{{list[id].title}}</p>

What I want to do is basically

<p ng-repeat="list in lists if list[id].selected">{{list[id].title}}</p>

Of course, on the second line I am getting an error. Any advice on this?

Thank you.

4

2 に答える 2

34

コメントで書いたように、フィルターを使用してそれを実現できます。例を次に示します: 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}"
于 2013-02-06T22:05:21.300 に答える
10

ここで追加する必要があるのはフィルターです。

<p ng-repeat="list in lists | filter:{selected:true}">test {{list.title}}</p>

例としてplnkrを追加しました。

于 2013-02-06T22:11:56.297 に答える