【发布时间】:2017-08-30 13:39:57
【问题描述】:
我想使用meanjs应用程序中的日期范围功能过滤基于invoice_date的项目(开始和结束日期)。
我的问题是日期过滤器功能在
plunker and my localHost production中运行良好,但在推送到服务器时,如果某些invoice_date值日期为 `2017-08-24 和2017-07-27'这些数据没有显示在表格中,我不知道我在哪里做错了,我错过了什么.....My Plunk请查看我的 plunker 以供参考。
我已经显示
invoice_date,所以这是我要用于过滤的字段。所以我到底在寻找什么,我想过滤
invoice_date作为开始日期和结束日期:例如:- 如果我们选择像24-05-2017这样的开始日期并结束表中的日期是24-08-2017这两个事务只需要显示或过滤...所以我使用日期范围过滤器来实现此解决方案,但在服务器中它不适合我们请帮助。在我的服务器中,如果我选择
end date作为今天的日期,所有数据都显示在表格上,所以我认为问题是基于这些字段$scope.from = new Date(2014, 04, 30); $scope.to = new Date(2019, 08, 25);有两种解决方案:- (i) 如果我们在日期范围函数中将
end date设置为今天的默认日期,所有数据都将完美显示。(ii) 在终端出现这个错误如果我们解决这个错误肯定会得到解决方案,我自己尝试过但我无法解决这个...所以请帮助解决这个问题。
控制器:
.filter('dateRange', function() {
return function(records, dateKey, from, to) {
return records.filter(function(record) {
return !moment(record[dateKey], 'YYYY-MM-DD').isBefore(moment(from))
&& !moment(record[dateKey], 'YYYY-MM-DD').isAfter(moment(to));
});
};
})
HTML:
<input type="date" class="form-control" name="from" ng-model="from">
<input type="date" class="form-control" name="to" ng-model="to">
过滤器:-
ng-repeat="data in record | dateRange : 'invoice_date' : from : to"
- 我创建了 plunker 供参考:- My plunker
【问题讨论】: