2017-03-16 81 views
0

我有使用過濾器在控制器AngularJs與GROUPBY篩選在控制器

$scope.toLocaleDate = function (e) { 
       var date = e.da.split(" "); 
       e.da = date[0]; 
       return e; 
      }; 

現在我想有濾波的數據到另一個JSON鑑於

<div ng-repeat="(key, value) in TData.Files 
      | map: toLocaleDate 
      | groupBy: 'da'"> 
<div><strong>{ Date:</strong> "{{ key }}" , Count: {{value.length}} } ,</div> 

一個JSON濾波器目的。所以我需要在控制器中進行篩選,而不是在視圖中。如何實現該功能?

預期的結果是一樣

[{'Date':"2012-01-12", Count:5},{'Date':"2012-01-13", Count:8}, ....] 
+0

使用$過濾器,這樣你就可以過濾控制器中的數據 –

+0

我解決了var newData = $ filter('groupBy')(OriginalData,'FieldName'); – DrVishnu

回答

0

,因爲在angularjs沒有缺省過濾GROUPBY所以,你必須做一個過濾器爲 ,你可以在短短的

解釋控制器使用任何過濾器

注入$filter依賴,並在控制器只需使用簡單的語法

$filter('filtername')('arraydata', 'other arguments'); 

http://jsfiddle.net/R8YZh/35/