Javascript 数组类型的angularjs 1.x过滤器

Javascript 数组类型的angularjs 1.x过滤器,javascript,angularjs,Javascript,Angularjs,我在数组中有很多像下面这样的对象,现在我想对其应用过滤器。如何应用我在图中提到的过滤器: 我可以使用简单的AngularJS过滤器吗 请帮助我应用这些过滤器的最佳方法。提前谢谢。我在这个JSON中有多个这样的酒店数据。但我并不是因为空间的原因而与之相撞 [ { "_id": "57da6aeb4eafac04afd01bc5", "name": "subways", "city": "lahore", "area": "j

我在数组中有很多像下面这样的对象,现在我想对其应用过滤器。如何应用我在图中提到的过滤器:

我可以使用简单的AngularJS过滤器吗

请帮助我应用这些过滤器的最佳方法。提前谢谢。我在这个JSON中有多个这样的酒店数据。但我并不是因为空间的原因而与之相撞

[
    {
        "_id": "57da6aeb4eafac04afd01bc5",
        "name": "subways",
        "city": "lahore",
        "area": "johar town",
        "min_order": "200 AED",
        "del_time": "1 hour",
        "del_fees": "1 AED",
        "pre_order": "NA",
        "rating_star": "4",
        "rating_no": 514,
        "status": "OPEN",
        "__v": 0,
        "categories": [
            {
                "_id": "57da72e94eafac04afd01bc9",
                "restaurant_id": "57da6aeb4eafac04afd01bc5",
                "name": "subways Burger",
                "category_id": "1",
                "__v": 0,
                "items": [
                    {
                        "_id": "57da7973d0b5e2059c5ff10a",
                        "restaurant_id": "57da6aeb4eafac04afd01bc5",
                        "category_id": "57da72e94eafac04afd01bc9",
                        "logo": "abcLogo",
                        "name": "subway item 1",
                        "detail": "great item",
                        "price": "10",
                        "rating": "5",
                        "__v": 0
                    },
                    {
                        "_id": "57da79e8d0b5e2059c5ff10b",
                        "restaurant_id": "57da6aeb4eafac04afd01bc5",
                        "category_id": "57da72e94eafac04afd01bc9",
                        "logo": "abcLogo",
                        "name": "subway item 2",
                        "detail": "great item",
                        "price": "10",
                        "rating": "5",
                        "__v": 0
                    },
                    {
                        "_id": "57da79efd0b5e2059c5ff10c",
                        "restaurant_id": "57da6aeb4eafac04afd01bc5",
                        "category_id": "57da72e94eafac04afd01bc9",
                        "logo": "abcLogo",
                        "name": "subway item 3",
                        "detail": "great item",
                        "price": "10",
                        "rating": "5",
                        "__v": 0
                    },
                    {
                        "_id": "57da79fcd0b5e2059c5ff10d",
                        "restaurant_id": "57da6aeb4eafac04afd01bc5",
                        "category_id": "57da72e94eafac04afd01bc9",
                        "logo": "abcLogo",
                        "name": "subway item 4",
                        "detail": "great item",
                        "price": "10",
                        "rating": "5",
                        "__v": 0
                    }
                ]
            }
]

处理此类操作的简单AngularJS过滤器如下所示:

angular.module(“myapp”,[])
.controller(“myctrl”,函数myctrl($scope){
$scope.cityIncludes=[];
$scope.includeCity=功能(城市){
控制台.日志(城市);
变量i=$scope.cityIncludes.indexOf(城市);
如果(i>-1){
$scope.cityIncludes.splice(i,1);
}否则{
$scope.cityIncludes.push(城市);
}
log($scope.cityIncludes);
}
$scope.cityFilter=函数(城市){
如果($scope.cityIncludes.length>0){
if($scope.cityIncludes.indexOf(city.city)<0)
返回;
}
回归城市;
}
$scope.rests=[{
“_id”:“57da6aeb4eafac04afd01bc5”,
“名称”:“拉合尔餐厅”,
“城市”:“拉合尔”,
“区域”:“johar镇”,
“最低订单”:“200 AED”,
“德鲁时间”:“1小时”,
“德鲁费用”:“1 AED”,
“预订单”:“不适用”,
“评级之星”:“4”,
“评级编号”:514,
“状态”:“打开”,
“_v”:0,
“类别”:[{
“_id”:“57da72e94eafac04afd01bc9”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“名称”:“地铁汉堡”,
“类别id”:“1”,
“_v”:0,
“项目”:[{
“_id”:“57da7973d0b5e2059c5ff10a”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“类别id”:“57da72e94eafac04afd01bc9”,
“徽标”:“abcLogo”,
“名称”:“地铁项目1”,
“细节”:“很棒的物品”,
“价格”:“10”,
“评级”:“5”,
“_v”:0
}, {
“_id”:“57da79e8d0b5e2059c5ff10b”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“类别id”:“57da72e94eafac04afd01bc9”,
“徽标”:“abcLogo”,
“名称”:“地铁项目2”,
“细节”:“很棒的物品”,
“价格”:“10”,
“评级”:“5”,
“_v”:0
}, {
“_id”:“57da79efd0b5e2059c5ff10c”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“类别id”:“57da72e94eafac04afd01bc9”,
“徽标”:“abcLogo”,
“名称”:“地铁项目3”,
“细节”:“很棒的物品”,
“价格”:“10”,
“评级”:“5”,
“_v”:0
}, {
“_id”:“57da79fcd0b5e2059c5ff10d”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“类别id”:“57da72e94eafac04afd01bc9”,
“徽标”:“abcLogo”,
“名称”:“地铁项目4”,
“细节”:“很棒的物品”,
“价格”:“10”,
“评级”:“5”,
“_v”:0
}]
}]
}, {
“_id”:“57da6aeb4eafac04afd01bc5”,
“名称”:“伊斯兰堡休息”,
“城市”:“伊斯兰堡”,
“区域”:“johar镇”,
“最低订单”:“200 AED”,
“德鲁时间”:“1小时”,
“德鲁费用”:“1 AED”,
“预订单”:“不适用”,
“评级之星”:“4”,
“评级编号”:514,
“状态”:“打开”,
“_v”:0,
“类别”:[{
“_id”:“57da72e94eafac04afd01bc9”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“名称”:“地铁汉堡”,
“类别id”:“1”,
“_v”:0,
“项目”:[{
“_id”:“57da7973d0b5e2059c5ff10a”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“类别id”:“57da72e94eafac04afd01bc9”,
“徽标”:“abcLogo”,
“名称”:“地铁项目1”,
“细节”:“很棒的物品”,
“价格”:“10”,
“评级”:“5”,
“_v”:0
}, {
“_id”:“57da79e8d0b5e2059c5ff10b”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“类别id”:“57da72e94eafac04afd01bc9”,
“徽标”:“abcLogo”,
“名称”:“地铁项目2”,
“细节”:“很棒的物品”,
“价格”:“10”,
“评级”:“5”,
“_v”:0
}, {
“_id”:“57da79efd0b5e2059c5ff10c”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“类别id”:“57da72e94eafac04afd01bc9”,
“徽标”:“abcLogo”,
“名称”:“地铁项目3”,
“细节”:“很棒的物品”,
“价格”:“10”,
“评级”:“5”,
“_v”:0
}, {
“_id”:“57da79fcd0b5e2059c5ff10d”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“类别id”:“57da72e94eafac04afd01bc9”,
“徽标”:“abcLogo”,
“名称”:“地铁项目4”,
“细节”:“很棒的物品”,
“价格”:“10”,
“评级”:“5”,
“_v”:0
}]
}]
}, {
“_id”:“57da6aeb4eafac04afd01bc5”,
“名称”:“abcd”,
“城市”:“拉瓦尔品第”,
“区域”:“johar镇”,
“最低订单”:“200 AED”,
“德鲁时间”:“1小时”,
“德鲁费用”:“1 AED”,
“预订单”:“不适用”,
“评级之星”:“4”,
“评级编号”:514,
“状态”:“打开”,
“_v”:0,
“类别”:[{
“_id”:“57da72e94eafac04afd01bc9”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“名称”:“地铁汉堡”,
“类别id”:“1”,
“_v”:0,
“项目”:[{
“_id”:“57da7973d0b5e2059c5ff10a”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“类别id”:“57da72e94eafac04afd01bc9”,
“徽标”:“abcLogo”,
“名称”:“地铁项目1”,
“细节”:“很棒的物品”,
“价格”:“10”,
“评级”:“5”,
“_v”:0
}, {
“_id”:“57da79e8d0b5e2059c5ff10b”,
“餐厅id”:“57da6aeb4eafac04afd01bc5”,
“类别id”:“57da72e94eafac04afd01bc9”,
“徽标”:“abcLogo”,
“名称”:“地铁项目2”,
  <ul>
    <li>
      <input name="rest.cusine" type="radio" value="india" ng-click="filterCuisine('indian')">
      <label for="open status">india</label>
    </li>
    <li>
      <input name="rest.cusine" type="radio" value="india" ng-click="filterCuisine('pakistani')">
      <label for="open status">pakistan</label>
    </li>
    <li>
      <input name="rest.cusine" type="radio" value="arabic" ng-click="filterCuisine('arabic')">
      <label for="open status">arabic</label>
    </li>

  </ul>
$scope.filterCuisine = function(cuisine){
  $scope.checkFilterCuisine = cuisine;
  console.log($scope.checkFilterCuisine);
}
$scope.selectCuisine = function(city){
  console.log(city.cuisines);
 if (city.cuisines.length > 0 && $scope.checkFilterCuisine != '') {
   if (city.cuisines.indexOf($scope.checkFilterCuisine) < 0){
        return;
      }
  }
   return city;
}