I'm trying to something like
我正在尝试类似的东西
<ion-item class="item-icon-right " ng-repeat="project in jsonObj.Projects | filter:projectArea:true:ProjectStatus" type="item-text-wrap" ui-sref="tabs.detail({project:project['Project name']})">
<div class="row">
<div class="col col-45">
<h2>{{project["Project name"]}}</h2>
<h4>{{project["PM"]}}</h4>
</div>
<div class="col col-45"></div>
<div class="col col-10">
<span class="badge badge-assertive icon-badge"><i class="ion-ios-arrow-right"></i></span>
</div>
</div>
</ion-item>
Controller:
控制器:
angular.module('App')
.controller('ProjectsController', function ($scope, $rootScope, $stateParams, $state) {
$scope.projectArea = $stateParams.area;
$scope.ProjectStatus = $stateParams.Project_Status;
});
Data:
数据:
{PM: "Oommen", Area: "Foods", Project name: "PLuM", Reviewer: "Alex", A&D Start Date: "7-Dec-15"…}$$hashKey: "object:31"A&D End Date: "15-Jan-16"A&D Start Date: "7-Dec-15"Area: "Foods"Build End Date: "TBD"Build Start Date: "TBD"Implementation date: "TBD"PM: "Oommen"Project Status: "Green"Project name: "PLuM"Reviewer: "Alex"SIT End Date: "TBD"SIT Start Date: "TBD"ST End Date: "TBD"ST Start Date: "TBD"Status: "HLD Phase Kickoff. Review to be planned early"}
I'm trying filter ng-repeat with Area and Project Status values. However it filters only based on Area. Could you someone help to identify the problem?
我正在尝试使用Area和Project Status值过滤ng-repeat。但是它仅根据区域进行过滤。你能帮助找出问题吗?
2 个解决方案
#1
1
You can chain filters:
你可以链过滤器:
project in jsonObj.Projects | filter:projectArea:true | filter:ProjectStatus
#2
0
Two options:
两种选择:
-
Use multiple filters where one filter uses the result of the previous filter (chaining)
使用多个过滤器,其中一个过滤器使用前一个过滤器的结果(链接)
ng-repeat="project in projects | myFirstFilter | mySecondFilter"
ng-repeat =“项目中的项目| myFirstFilter | mySecondFilter”
-
Pass on the data or object you want to add to the equation to the filter.
将要添加到等式中的数据或对象传递给过滤器。
ng-repeat="project in projects | myFirstFilter:myData"
ng-repeat =“项目中的项目| myFirstFilter:myData”
I'd go with the first option because it creates a clear separation of what each filter does. Makes it easier to test as well.
我会选择第一个选项,因为它可以清楚地分隔每个滤镜的功能。使测试更容易。
#1
1
You can chain filters:
你可以链过滤器:
project in jsonObj.Projects | filter:projectArea:true | filter:ProjectStatus
#2
0
Two options:
两种选择:
-
Use multiple filters where one filter uses the result of the previous filter (chaining)
使用多个过滤器,其中一个过滤器使用前一个过滤器的结果(链接)
ng-repeat="project in projects | myFirstFilter | mySecondFilter"
ng-repeat =“项目中的项目| myFirstFilter | mySecondFilter”
-
Pass on the data or object you want to add to the equation to the filter.
将要添加到等式中的数据或对象传递给过滤器。
ng-repeat="project in projects | myFirstFilter:myData"
ng-repeat =“项目中的项目| myFirstFilter:myData”
I'd go with the first option because it creates a clear separation of what each filter does. Makes it easier to test as well.
我会选择第一个选项,因为它可以清楚地分隔每个滤镜的功能。使测试更容易。