У меня есть собственный фильтр сортировки, подобный этому:
.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 из строки в число. Но когда я использую фильтр, я получаю
Uncaught Ошибка: [$ rootScope: infdig] 10 $ digest () достигнуты итерации.
Aborting!
Но когда я использую функцию orderBy в angular, все в порядке, так что проблема внутри моей функции сортировки. Пожалуйста, помогите мне, потому что я сошел с ума, пытаясь понять, что я делаю не так