AngularJS - 在指令中获取过滤器长度

AngularJS - Get filter length in directive

本文关键字:过滤器 获取 指令 AngularJS      更新时间:2023-09-26

如何从我的指令my-dir访问filtered.length

<li my-dir ng-repeat="result in filtered = (results | filter:query | orderBy: 'title')">
    <h1>{{ result.title }}</h1>
    <p>Search hits: {{ filtered.length }}</p>
</li>

我相信问题是您在确定要迭代的内容之前尝试过滤。

<li my-dir ng-repeat="result in SOME.resultset | filter:query | orderBy:orderProp">
    <h1>{{ result.title}}</h1>
  </li>

此外,此处的查询和标题需要绑定到输入元素。应该看起来像这样:

  Search: <input ng-model="query">
  Sort by:
  <select ng-model="orderProp">
    <option value="title">Title</option>
    <option value="artist">Artist</option>
  </select>

获得长度将如下所示

Result Length: {{(resultset|filter:query).length}}