【发布时间】:2014-11-27 21:53:42
【问题描述】:
我有一个正在构建的网站上的事件列表,我希望自动删除过去的事件。我已经编写了一个过滤器来执行此操作,但它也删除了今天的事件。我正在尝试使用 Angular Moment。这是我的代码:
angular.module('zenCityApp')
.filter('filterPastDates', function (moment) {
return function (events) {
var filterByDate = [];
for (var i = 0; i < events.length; i++) {
var currentDate = new Date();
if(moment(currentDate).isBefore(events[i].date, 'hour')) {
console.log("we're in!");
filterByDate.push(events[i]);
console.log(filterByDate);
}
}
return filterByDate;
};
});
这里是标记:
div ng-repeat="event in events | limitTo:100 | filter:tfilter | orderBy: 'date' | filterPastDates">
<div class="row">
<div class="col-md-6">
<h4>{{event.date | amDateFormat:'MMMM Do'}}</h4>
</div>
<div class="col-md-6">
<h4>{{event.name}}</h4>
</div>
</div>
任何帮助将不胜感激。
【问题讨论】:
-
我认为您只需将“小时”更改为“日”,但您真的应该只声明一次 currentDate
标签: angularjs date filter momentjs