我写了一个AngularJS应用程序,但它证明了一点噩梦调试。我正在使用Grunt + uglify来连接和缩小我的应用程序代码。它还会在缩小的JS文件旁边创建源地图。AngularJS - 堆栈跟踪忽略源图
当文件中存在JS错误,但在AngularJS应用程序之外时,源映射似乎正常工作。例如如果我在其中一个文件的顶部写入console.log('a.b');
,则Chrome调试器中记录的错误会显示原始文件的行+文件信息,而不是缩小的文件。
当Angular自身运行的代码出现问题时(例如在Controller代码中),就会出现问题。我从Angular获得了一个很好的堆栈跟踪,但它仅仅详细说明了缩小文件而非原始文件。
有什么我可以做,让Angular承认源地图?
举例如下错误:
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)
而现在的错误是固定的铬42 :) Cf https://code.google.com/p/chromium/issues/detail?id=357958。 –