3

在閱讀了大量SO(post1post2,post3 ...)和谷歌搜索後,我仍然不知道如何排序在我的ng - 重複。AngularJS - 無法排序DateTime與ngRepeat orderBy

這裏是我做了什麼:

我的index.html內的NG-重複:

<div ng-repeat="oneItem in groupesItems.ITEMS | orderBy:'-myDate'" class="item"> 
             ... 
<div class="course-date">{[{oneItem.myDate | date:'dd MMMM yyyy hh : mm'}]}</div> 
             ... 
</div> 

我也看到了,我已經轉換到指明MyDate Date對象,因爲Angular認爲它是一個字符串。所以在我的角度控制器,這是我所做的:

($scope.groupesItems.ITEMS).forEach(function(data){ 
     data.myDate = new Date(data.myDate); 
    }); 

但沒有任何工作!

請幫忙!我忽略了什麼?

<div ng-repeat="oneItem in groupesItems.ITEMS | orderBy:'-temp'" class="item"> 
    <div class="course-date">{[{oneItem.myDate | date:'dd MMMM yyyy hh : mm'}]}</div> 
</div> 

的Javascript:

+0

首先檢查;你有沒有看到你在控制檯得到的數據,如果它包含myDate? –

+0

$ scope.groupesItems包含什麼? –

回答

3

嘗試通過getTime方法使用一些temp變量

($scope.groupesItems.ITEMS).forEach(function(data){ 
    data.temp = new Date(data.myDate).getTime(); 
}); 

您也可以嘗試reversetrueorderBy:'myDate':後)不改變的JavaScript部分:

<div ng-repeat="oneItem in groupesItems.ITEMS | orderBy:'myDate':true" class="item"> 
    <div class="course-date">{[{oneItem.myDate | date:'dd MMMM yyyy hh : mm'}]}</div> 
</div> 
+0

Thx,它很棒:)。但是我的代碼錯過了什麼? – kabrice

+1

在你的情況'反向'是答案。查看更新的答案。 –