angularJS过滤两个条件

angularJS filter for two condition

本文关键字:两个 条件 过滤 angularJS      更新时间:2023-09-26

我有一个json数组用于类别

$scope.categories=     [{
         "name": "Sport",
         "value":"SPORT",
        "image": "images/Layer-1.png"
        },{
         "name": "Theater",
         "value":"THEATER",
        "image": "images/Layer-2.png"
        },{
         "name": "Restaurant",
         "value":"RESTAURANT",
        "image": "images/Layer-3.png"
        },{
         "name": "Concert",
         "value":"CONCERT",
        "image": "images/Layer-4.png"
        },{
         "name": "Nightlife",
         "value":"THEATER",
        "image": "images/Layer-2.png"
        }];
我通过ng-click 这个函数发送的

 $scope.sendCategory = function(category) {
     $scope.search = category;
     //alert(category);

  };

我在HTML中有这个过滤器

filter:{itemType:search} 

它工作得很好。现在我想让它的工作方式,当类别是"夜生活",它显示音乐会和剧院,因为没有数据有itemType =夜生活;那么如何让它像其他人一样工作呢就像它正在工作一样但是对于夜生活搜索将同时显示音乐会和剧院

我认为你应该使用过滤器函数。像这样:

filter:function(value){return ['concert','theater'].indexOf(value.itemType) !== -1;}