Ich habe eine einzelne Seite App, an der ich mit mehreren Mitarbeitern seit über einem Jahr gearbeitet habe. Es ist eine eckige App, die eckigen UI-Router verwendet, um zwischen den Seiten zu wechseln. Manchmal, wenn die Einstellungsseite zum ersten Mal besucht, wird die folgende Ausnahme ausgelöst:Wie kann ich infdig mit leerem Array in einer einzelnen Seite eckige App debuggen?
Error: [$rootScope:infdig] 10 $digest() iterations reached. Aborting!
Watchers fired in the last 5 iterations: []
http://errors.angularjs.org/1.3.3/$rootScope/infdig?p0=10&p1=%5B%5D
at REGEX_STRING_REGEXP (angular.js:63)
at Scope.$get.Scope.$digest (angular.js:14084)
at Scope.$get.Scope.$apply (angular.js:14308)
at done (angular.js:9532)
at completeRequest (angular.js:9717)
at XMLHttpRequest.requestLoaded (angular.js:9660)
I [$ rootScope: infdig] verstehe im Normalfall, aber die Tatsache, dass die Beobachter Array leer ist sehr verwirrend mir. Außerdem war es sehr schwierig zu debuggen, weil es nur gelegentlich passiert. Mithilfe des Inspektors konnte ich feststellen, dass die Anforderung, die abgeschlossen wird, das Laden der HTML-Datei mit den Einstellungen ist. Das Entfernen von verschiedenen Controllern von der Einstellungsseite behebt das Problem nicht, es scheint sogar zu passieren, wenn eine dumme "Shell" -Version der Einstellungsseite geladen wird, auf der nur allgemeine Widgets geladen sind.
Wie kann ich herausfinden, was diese leere infdig Ausnahme verursacht? Wie kann ich das verhindern?
Ihr etwas Code ist modifieng der Bereich .. & geht auf Endlosschleife .. –
Dies passiert auch, wenn die Einstellungen Controller nichts tut, obwohl. – Chris
könnten Sie eine Plunkr/Geige der gleichen Sache erstellen .. –