Ich habe eine AngularJS-App geschrieben, aber es ist ein bisschen wie ein Albtraum zu debuggen. Ich verwende Grunt + uglify, um meinen Anwendungscode zu verketten und zu minimieren. Es erstellt auch eine Quellkarte neben der verkleinerten JS-Datei.AngularJS - Stack-Trace ignorieren Quellkarte
Die Quellkarte scheint ordnungsgemäß zu funktionieren, wenn in der Datei ein JS-Fehler auftritt, jedoch außerhalb der AngularJS-Anwendung. z.B. Wenn ich console.log('a.b');
oben in einer der Dateien schreibe, zeigt der im Chrome-Debugger protokollierte Fehler die Zeile + Dateiinformationen für die Originaldatei an, nicht die minimierte.
Das Problem tritt auf, wenn ein Problem mit Code vorliegt, den Angular selbst ausführt (z. B. im Controller-Code). Ich bekomme eine nette Stapelspur von Angular, aber es gibt nur die verkleinerte Datei an, nicht das Original.
Gibt es etwas, was ich tun kann, damit Angular die Quellkarte erkennt?
Beispiel Fehler unter:
TypeError: Cannot call method 'getElement' of undefined
at Object.addMapControls (http://my-site/wp-content/plugins/my-maps/assets/js/app.min.js:1:2848)
at Object.g [as init] (http://my-site/wp-content/plugins/my-maps/assets/js/app.min.js:1:344)
at new a (http://my-site/wp-content/plugins/my-maps/assets/js/app.min.js:1:591)
at d (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.0-rc.2/angular.min.js:29:495)
at Object.instantiate (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.0-rc.2/angular.min.js:30:123)
Und der Fehler behoben ist jetzt in Chrom 42 :) Cf https://code.google.com/p/chromium/issues/detail?id=357958. –