如何使用Angular.js和ngRepeat对时间属性进行排序

时间:2017-06-12 07:56:48

标签: javascript angularjs momentjs

这是我的样本数据

  {
    "day": "Sunday",
    "count": [{
        "desc": "sunday one event"
    }, {
        "j": [{
            "start": "11:00 pm"
        }, {
            "end": "11:51 pm"
        }]
    }, {
        "desc": "sunday second event"
    }, {
        "j": [{
            "start": "12:00 am"
        }, {
            "end": "12:06 am"
        }]
    }]
}

我想使用angular.js显示以时间(UTC格式)属性排序的上述数据。

我尝试过使用moment.js,但无法弄明白。

1 个答案:

答案 0 :(得分:1)

使用cache.region.factory_class = 'org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory' 使用Moment.js将日期字符串格式化为日期对象。

要对结果进行排序,请使用moment('11/06/2017 11:00').format("DD-MM-YYYY HH:mm")指令的orderBy选项(如果需要更深层次的过滤,则提供自定义ngRepeat):

filter

查看

{{ array | orderBy : expression}}

或使用<div ng-app="app" ng-controller="DateController as vm"> <b>Events</b> <div ng-repeat="ev in vm.events | orderBy: 'date' "> {{::ev.name}} - {{::ev.date}} </div> </div>

排序
-

<强>控制器

<div ng-repeat="ev in vm.events | orderBy: '-date' ">

JSFiddle