0
我有一个简单的应用了几个过滤器的ng-repeat。现在,我为偶数结果添加了一个ng-class-even类,并且在应用过滤器时,类在运行过滤器之前似乎仍保留原始索引。这使得行在奇数位置与类“偶”相同。在ng-repeat上使用自定义过滤器导致ng-class-even/odd不起作用
HTML
<div data-ng-repeat="location in locations | topBranchFilter:topLocations | cityFilter:searchCity | filter:search" data-ng-class-even="'even'">
...
</div>
过滤(包括自定义过滤器使用这个简单的格式)
angular.module('App')
.filter('cityFilter', function() {
return function(locations, searchCity) {
if (searchCity!=='') {
var filtered = [];
angular.forEach(locations, function(location) {
if(location.BranchStationCity==searchCity){
filtered.push(location);
}
});
return filtered;
} else {
return locations;
}
};
});
我想我的问题是,是ng-class-even
不与自定义过滤器或多个过滤器的支持?
可以重现:http://plnkr.co/edit/CcdMSWj0IQ9kd9hfRZjV?p=preview(类型在过滤器“4”) - 似乎是一个错误。 你可以使用CSS'':nth-child(偶数)'选择器来做样式 –
谢谢。很久以前在Github上看到一个封闭的问题,所以认为它是我的代码。 – bennewton999
@弗洛伊恩奥本,你的plunkr工程,如果你添加追踪:http://plnkr.co/edit/G3yzcdn3OhYHL0QU3fDj?p=preview OP看看这是否也为你修复它。在'ng-repeat'语句的最后加上'by index'。 – aet