使用ng repeat自定义排序时出现Angularjs无限摘要错误
我有如下自定义排序筛选器:使用ng repeat自定义排序时出现Angularjs无限摘要错误,angularjs,Angularjs,我有如下自定义排序筛选器: .filter('sortScanDevs', function () { return function (devices, option, reverse) { if (option === 'ipAddress') { return devices.sort(function(a, b) { var first = reverse ? b : a; var second = reverse ? a : b;
.filter('sortScanDevs', function () {
return function (devices, option, reverse) {
if (option === 'ipAddress') {
return devices.sort(function(a, b) {
var first = reverse ? b : a;
var second = reverse ? a : b;
return getIpAsNum(first.ipAddress) - getIpAsNum(second.ipAddress);
});
} else {
return devices.sort(function(a, b) {
var first = reverse ? b : a;
var second = reverse ? a : b;
return ('' + first.attr).localeCompare(second.attr);
})
}
function getIpAsNum(ip) {
return +ip.split('.').join('');
}
}
})
它和orderBy做的几乎一样,但如果排序选项是IP,我将IP从字符串解析为数字。但当我使用过滤器时,我会
未捕获错误:[$rootScope:infdig]10$digest()已达到迭代次数。
流产
但当我使用angular的orderBy函数时,一切都很好,所以问题就在我的排序函数中。请帮帮我,因为我已经失去了理解我做错了什么的想法。阅读。不,它根本不做orderBy做的事。orderBy做了正确的事情:返回原始数组的排序副本。您的代码将数组排序到位。