首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

AngularJS -如何在另一个过滤器中使用过滤过的数组?

在AngularJS中,可以通过使用管道符(|)将一个过滤器应用于数组。如果想在另一个过滤器中使用已过滤的数组,可以将过滤器应用于一个中间变量,然后将该变量传递给另一个过滤器。

以下是一个示例代码:

代码语言:txt
复制
<div ng-app="myApp" ng-controller="myCtrl">
  <input type="text" ng-model="searchText">
  <ul>
    <li ng-repeat="item in filteredArray = (myArray | filter:searchText) | orderBy:'name'">{{item.name}}</li>
  </ul>
</div>

<script>
  var app = angular.module('myApp', []);
  app.controller('myCtrl', function($scope) {
    $scope.myArray = [
      {name: 'John', age: 25},
      {name: 'Jane', age: 30},
      {name: 'Bob', age: 35}
    ];
  });
</script>

在上面的示例中,我们使用了两个过滤器:filterorderBy。首先,我们使用filter过滤器将searchText应用于myArray数组,然后使用orderBy过滤器对过滤后的数组进行排序。注意,我们使用了一个中间变量filteredArray来存储过滤后的数组,然后在ng-repeat指令中使用该变量。

这样,我们就可以在另一个过滤器中使用已过滤的数组。在这个例子中,我们在ng-repeat指令中使用了filteredArray,并将其传递给orderBy过滤器,以对已过滤的数组按名称进行排序。

关于AngularJS的更多信息和详细介绍,可以参考腾讯云的AngularJS产品文档:AngularJS产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Angular.js学习笔记(三)

    1、uppercase,lowercase 大小写转换 {{ "lower cap string" | uppercase }} // 结果:LOWER CAP STRING {{ "TANK is GOOD" | lowercase }} // 结果:tank is good 2、date 格式化 {{1490161945000 | date:"yyyy-MM-dd HH:mm:ss"}} // 2017-03-22 13:52:25 3、number 格式化(保留小数) {{149016.1945000 | number:2}}//保留两位 {{149016.1945000 | number}}//默认为保留3位 4、currency货币格式化 {{ 250 | currency }} // 结果:$250.00 {{ 250 | currency:"RMB ¥ " }} // 结果:RMB ¥ 250.00 5、filter查找 输入过滤器可以通过一个管道字符(|)和一个过滤器添加到指令中,该过滤器后跟一个冒号和一个模型名称。 filter 过滤器从数组中选择一个子集 // 查找name为iphone的行 {{ [{"age": 20,"id": 10,"name": "iphone"}, {"age": 12,"id": 11,"name": "sunm xing"}, {"age": 44,"id": 12,"name": "test abc"} ] | filter:{'name':'iphone'} }} 同时filter可以自定义比较函数。 6、limitTo 截取 {{"1234567890" | limitTo :6}} // 从前面开始截取6位 {{"1234567890" | limitTo :6,6}} // 从第6位开始截取6位 {{"1234567890" | limitTo:-4}} // 从后面开始截取4位 7、orderBy 排序 // 根据id降序排 {{ [{"age": 20,"id": 10,"name": "iphone"}, {"age": 12,"id": 11,"name": "sunm xing"}, {"age": 44,"id": 12,"name": "test abc"} ] | orderBy:'id':true }}

    02
    领券