我有一個最初加載的對象數組沒有過濾器應該適用 然後在用戶選擇組合列表應相應地顯示。如何使用angularjs過濾列表
我不能讓我有沒有在這裏整個列表我並不顯示,只有單一選擇在工作時間做了什麼錯。 對於我使用的單一選擇
return $scope.filter[stat.userStatus] || noFilter($scope.filter);
我不能使兩個選擇一起工作。
我有一個最初加載的對象數組沒有過濾器應該適用 然後在用戶選擇組合列表應相應地顯示。如何使用angularjs過濾列表
我不能讓我有沒有在這裏整個列表我並不顯示,只有單一選擇在工作時間做了什麼錯。 對於我使用的單一選擇
return $scope.filter[stat.userStatus] || noFilter($scope.filter);
我不能使兩個選擇一起工作。
過濾器可以是chained together,像這樣:
<div ng-repeat="item in mylist | filter:filterByStatus | filter:filterByRole">
濾波器從左至右運行,其中每個過濾器過濾的數組傳遞到下一個過濾器。
這裏是Mark's搗鼓的一個分支,證明了這種方法: http://jsfiddle.net/2671uggu/
請在任何地方使用相同的命名和案例在你的代碼
admin
是不一樣的administrator
admin
是不一樣的Admin
如果我理解正確,其基本思想如下,
$scope.filterByCategory = function (stat) {
//check if user has a status matching checkbox select
var by_status = $scope.filter[stat.userStatus];
//check if user has a role that matching dropdown list select
var by_roles = stat.roles.indexOf($scope.filter.selectedSearch) !== -1;
return by_status || by_roles; //statisfy either of two will return true;
};
這會給我結果不是篩選器的組合 – 2014-12-09 07:33:36
@KunalVashist將最後一行更改爲&&如果要應用這兩個條件。否則,我不知道你想要什麼:) – 2014-12-10 02:59:09
我能得到你的代碼工作。這是一種解決方法,一種更好的方法是製作一個過濾器(也是如此)。 假設,我提出: -
通過會員狀態過濾裝置檢查 'userStatus'
通過ADMIN狀態過濾裝置檢查 '角色'
看看這個Plnkr
我我正在基於$ scope.filter更新的對象進行過濾。
更改HTML
<div ng-repeat="item in mylist | filter:filterModel">
更改JS
$scope.filterModel =
{
"userStatus":"",
"roles" : ""
}
$scope.$watch('filter', function() {
var myModel =
{
"userStatus":"",
"roles" : ""
}
if($scope.filter.administrator && $scope.filter.lead)
{
myModel.userStatus="";
}
else if($scope.filter.administrator)
{
myModel.userStatus="admin";
}
else if($scope.filter.lead)
{
myModel.userStatus="lead";
}
else
{
myModel.userStatus="";
}
if(angular.equals($scope.filter.selectedSearch,'Default'))
{
myModel.roles="";
}
else
{
myModel.roles=$scope.filter.selectedSearch;
}
$scope.filterModel=myModel;
},true);
UPDATE:馬克的過濾器似乎是正確
http://jsfiddle.net/vzndtnkp/2/工作 – 2014-12-05 09:41:07
有一點可以肯定的是,在你的代碼中你有$ scope。filterByCategory =使用stat命名參數的函數(stat)。您在過濾器中調用此函數而不給出任何參數。所以這至少會打破你的過濾器。 – 2014-12-05 10:32:02
stat是列表的對象 – 2014-12-05 10:40:35