Javascript AngularJS嵌套ng重复筛选多个参数
长期潜伏者,第一次海报。真的很喜欢这里的社区:) 好的,问题就在这里。目标是通过向筛选器传递2个参数来筛选ng repeat 我有一个嵌套的ng repeat,在第二个repeat上,我需要根据条目的生命周期是否在当前月份来过滤条目 我以前用过ng if,但因为我对奇数行和偶数行使用了不同的CSS,所以产生了不想要的结果 相关HTML部分:Javascript AngularJS嵌套ng重复筛选多个参数,javascript,angularjs,angularjs-ng-repeat,ng-repeat,angularjs-filter,Javascript,Angularjs,Angularjs Ng Repeat,Ng Repeat,Angularjs Filter,长期潜伏者,第一次海报。真的很喜欢这里的社区:) 好的,问题就在这里。目标是通过向筛选器传递2个参数来筛选ng repeat 我有一个嵌套的ng repeat,在第二个repeat上,我需要根据条目的生命周期是否在当前月份来过滤条目 我以前用过ng if,但因为我对奇数行和偶数行使用了不同的CSS,所以产生了不想要的结果 相关HTML部分: <div class="col-md-12" ng-repeat="month in monthTable"> <div class="
<div class="col-md-12" ng-repeat="month in monthTable">
<div class="col-md-12">
<h2>
<span>{{ month.start | amDateFormat:"MMMM" | uppercase}}</span>
</h2>
</div>
<div class="col-md-12">
<div ng-class-even="'calendar_row_even'" ng-class-odd="'calendar_row_odd'"
ng-repeat="bed in syncData.beds | filter: filterListItems(month, bed) |
orderBy:'timeFrom'">
// --> displays the unfiltered results for each month at the moment...
</div>
</div>
</div>
一个月过去了,但床还没有定义
如果我这样写:
"filter: filterListItems(month, bed)"
"filter: filterListItems:month:bed"
只有床被传下去了,但是月份没有定义
我不知道我做错了什么,如果有人能给我指出正确的方向,我将不胜感激。您应该将您的方法声明为筛选器:
angular.module('yourApp')
.filter('filterListItems', filterListItems);
并采用如下方法:
function filterListItems() {
return function(items, month) {
// 'items' represent the objects listed by your ng-repeat
// Now, filter the items to return only items that respect your condition.
return items.filter(function(item) {
return (item.timeFrom < month.end && item.timeUntil >= month.start);
});
}
}
angular.module('yourApp')
.filter('filterListItems', filterListItems);
function filterListItems() {
return function(items, month) {
// 'items' represent the objects listed by your ng-repeat
// Now, filter the items to return only items that respect your condition.
return items.filter(function(item) {
return (item.timeFrom < month.end && item.timeUntil >= month.start);
});
}
}
ng-repeat="bed in syncData.beds | filterListItems:month