Я использую фильтр в ng-repeat, чтобы отделить список Jsons в двух под-списках: один с элементами, находящимися в прошлом, и другие с будущими элементами. У json есть ключ под названием «dateFrom», который я сравниваю с фактической датой, чтобы определить, в каком списке этот элемент появится.ng-repeat filter - Не фильтровать правильно?
Но, несмотря на то, что функция фильтра использует только клавишу «dateFrom», чтобы определить это, если я изменю некоторые другие клавиши, фильтр изменится.
Я сделал быстрый jsFiddle, чтобы показать проблему: там
$scope.isPast = function(item)
{
var now = new Date();
return (item.dateFrom <= now);
}
У нас есть 4 элемента ... 3:
https://jsfiddle.net/1j2p2hbg/1/
функция фильтрации из них имеют фактическую дату, а другая имеет будущую дату. Функция isPast ТОЛЬКО проверяет атрибут dateFrom, но если я изменю атрибуты «keyBoolOne» и «keyBoolTwo», это также повлияет на фильтр.
Любой может сказать мне, почему?
Заранее благодарен!
Привет человек, спасибо за ответ! В моем фактическом проекте у меня есть аналогичная проблема, когда некоторые элементы не отображаются ни в одном из двух списков. Json очень похож, но я пока не могу его воспроизвести. Есть ли способ передать только фильтр «item.dateFrom», чтобы он полностью игнорировал все остальные атрибуты? Благодаря! – TRDrake