如何使用angular.js仅显示隐藏列表的结果

时间:2015-02-05 23:03:20

标签: angularjs variables ng-repeat ng-hide

我是Angular.js的新手并且遇到了一些问题。

我有一个可由本地范围变量搜索的列表。但是,我不要想要显示默认显示在输入字段下方的列表。我只想显示查询结果。我怎样才能做到这一点?

目前我有:

<form class="form-inline">
  <input ng-model="query" type="text" placeholder="Filter by" autofocus>
</form>

<ul ng-repeat="friend in friends | filter:query | orderBy: 'name' ">
  <li ng-show="friend">{{friend.name}}</li>
</ul>

使用“ng-hide”成功隐藏了视图中的列表,但我无法弄清楚如何显示查询结果。 :(

这里的任何提示都会有用。你可以查看我的小提琴:testing queries.

1 个答案:

答案 0 :(得分:4)

您可以将ng-show="query"添加到<ul>,只有在查询不为假时才会显示结果。

ng-show="friend"上的<li>是不必要的。

<ul 
    ng-show="query" 
    ng-repeat="friend in friends | filter:query | orderBy: 'name'"
>
    <li>{{friend.name}}</li>
</ul>

JSFiddle