在SO上阅读了大量帖子(post1,post2,post3 ...)并使用Google搜索,我仍然无法弄清楚如何对我内部的日期时间进行排序NG-重复。
以下是我所做的:
我的index.html中的ng-repeat:
<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);
});
但没有任何效果!
请帮忙!我忽略了什么?
答案 0 :(得分:4)
尝试通过temp
方法使用一些getTime
变量:
<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:
($scope.groupesItems.ITEMS).forEach(function(data){
data.temp = new Date(data.myDate).getTime();
});
此外,您可以在reverse
之后尝试true
orderBy:'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>