filtro de agrupamento angular
Seguemarcação condicional angular.js em ng-repeat, Tentei criar um filtro personalizado que faz agrupamento. Eu encontrei problemas em relação à identidade do objeto e o modelo sendo observado por mudanças, mas achei que finalmente consegui acertar, já que nenhum erro apareceu no console.
Acontece que eu estava errado, porque agora quando eu tento combiná-lo com outros filtros (para paginação) como assim
<div ng-repeat="r in blueprints | orderBy:sortPty | startFrom:currentPage*pageSize | limitTo:pageSize | group:3">
<div ng-repeat="b in r">
Eu recebo as temidas "10 $ digest () iterações alcançadas. Abortando!" mensagem de erro novamente.
Aqui está o meu filtro de grupo:
filter('group', function() {
return function(input, size) {
if (input.grouped === true) {
return input;
}
var result=[];
var temp = [];
for (var i = 0 ; i < input.length ; i++) {
temp.push(input[i]);
if (i % size === 2) {
result.push(temp);
temp = [];
}
}
if (temp.length > 0) {
result.push(temp);
}
angular.copy(result, input);
input.grouped = true;
return input;
};
}).
Observe tanto o uso deangular.copy
e a.grouped
marcador na entrada, mas sem sucesso :( estou ciente depor exemplo. "10 $ digest () iterações alcançadas. Abortando!" devido ao filtro usando angularjs mas obviamente eu não entendi.
Além disso, acho que a lógica de agrupamento é um pouco ingênua, mas isso é outra história. Qualquer ajuda seria muito apreciada, pois isso está me deixando louco.