/ / AngularJS "No se permiten duplicados en un repetidor" para createHttpBackend - angularjs

AngularJS "No se permiten duplicados en un repetidor" para createHttpBackend - angularjs

Mi aplicación AngularJS funciona (bien) para un usuario (Tomcat, usando su Firefox personal).

Al ejecutar una prueba de Selenium (Jetty, Firefox), ocurre una excepción que no puedo explicar:

Error: Duplicates in a repeater are not allowed. Repeater: uuid in ngModel key: string:5
ngRepeatAction@http://localhost:60690/webapp/frontend/app/lib/angular/angular.js:15407
$watchCollectionAction@http://localhost:60690/webapp/frontend/app/lib/angular/angular.js:8717
Scope.prototype.$digest@http://localhost:60690/webapp/frontend/app/lib/angular/angular.js:8811
Scope.prototype.$apply@http://localhost:60690/webapp/frontend/app/lib/angular/angular.js:9012
done@http://localhost:60690/webapp/frontend/app/lib/angular/angular.js:10265
completeRequest@http://localhost:60690/webapp/frontend/app/lib/angular/angular.js:10449
createHttpBackend/</xhr.onreadystatechange@http://localhost:60690/webapp/frontend/app/lib/angular/angular.js:10407

return logFn.apply(console, args);

Ahora, lo gracioso es: la cadena duplicada de la que habla (en este caso, "5", pero he visto otros valores como entenderá a continuación) parece ser una parte del GUID que estoy usando como parte de la llamada. De modo que el GUID está en la URL y también en el cuerpo de la solicitud. (Entonces, cuando mi GUID sea c2d21d9c-9e14 ... fallará en "2").

Tengo algunos conocimientos básicos de cómo los duplicadosno se desean en un repetidor, pero ¿por qué las cadenas de texto son tratadas por un repetidor en estas piezas de código Angular? Por supuesto, hay caracteres duplicados utilizados en cadenas de texto, ¿verdad?

De todos modos, estaría realmente feliz con una solución al problema. Pero de manera más general: ¿cómo abordaría un problema como este? Es asíncrono y no mi código ... ¡Muy apreciado!

Respuestas

0 para la respuesta № 1

AngularJS no admite duplicados en una directiva ng-repeat. Intente como un fragmento de código de abajo.

<div ng-repeat="r in [5,5,5] track by $index">