0
Я пытаюсь отфильтровать список по временным рамкам. Я использую angularjs, bootstrap datetimepicker и moment.js. Но что происходит, я не могу перечислить данные. Без настраиваемого фильтра я могу показать список, а также выполнить простой поиск текстового фильтра. Я добавил код, связанный с настраиваемым фильтром.Datetime range custom filter not working
код, связанный с фильтра в контроллере
App.controller('ReportController', ['$scope', 'Report','$filter', function($scope, Report,
$filter){
var self = this;
$filter('myfilter')(dateFrom ,dateTo);
App.filter('myfilter', function() {
return function(items, from, to) {
var result = [];
for (var i=0; i<items.length; i++){
var test = new Date(items[i].dateTime.$date);
var month = test.getMonth()+1;
var date = test.getDate();
var year = test.getFullYear();
var hour = test.getHours();
var minute = test.getMinutes();
var second = test.getSeconds();
var newDate = year+"-"+month+"-"+date+""+hour+"-"+minute+"-"+second;
if (newDate > from && newDate < to) {
result.push(items[i]);
}
}
return result;
};
});
}]);
В Html
<div ng-show="Sradioption == 'showSearch2'" class='input-group date' id='datetimepicker6'>
<input type='text' ng-model="dateFrom" class="form-control" />
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
<div ng-show="Sradioption == 'showSearch2'" class='input-group date' id='datetimepicker7'>
<input type='text' ng-model="dateTo" class="form-control" />
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
<table class="table table-hover">
<thead>
<tr>
<th>C_Number</th>
<th>Datetime</th>
<th>Reading</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="r in ctrl.reports | filter:search | myfilter:dateFrom:dateTo">
<td>{{r.c_Number}}</td>
<td>{{r.dateTime}}</td>
<td>{{r.reading}}</td>
</tr>
</tbody>
</table>
вы используете фильтр в обоих контроллер и ng-repeat .... Я думаю, что одного достаточно .... какую ошибку вы получаете в консоли? – Hemakumar
Я получаю сообщение об ошибке: [$ injector: unpr] Неизвестный поставщик: myfilterFilterProvider <- myfilterFilter – user3844782
вы можете создать плункер – Sajeetharan