AngularJS ng-repeat长数组,按日期排序,但限制为仅10行



我有一个包含 100 多个对象的长数组。每个对象都有一个member.date,但有些是null的,有些是日期字符串。

<tr ng-repeat="(k, member) in provider.allMembers | orderBy:'ended':true" ng-if="member.ended">

我的问题是我只想显示最新的 10 个,但是当我添加limitTo:10时,我得到的结果为零(因为显示的第一个条目是数组中的第 42 个对象。

您可以创建自己的过滤器,该过滤器检查该属性是否为null并返回您想要的内容:)

例如 https://scotch.io/tutorials/building-custom-angularjs-filters

我最终按结束日期重新调整了数组,然后简单地将ng-repeat限制为 10。

// sort all members by ended date
$rootScope.provider.allMembers.sort(function(a,b){
return new Date(b.ended) - new Date(a.ended);
});

然后使用此 ng 重复:

<tr ng-repeat="(k, member) in provider.allMembers | limitTo:10">

最新更新