我正在使用的angular.js应用程序目前使用Browserify,Minifyify和驱魔程序构建,以便拥有一个缩小的.js文件和外部源图。源图正在工作但不完整。我可以在Web检查器中看到非捆绑文件,并且在断点/异常上打开了正确的文件,这很好但不够。
每个变量名称都显示在其缩小形式下,调试控制台中显示的错误显示bundle.js中的行而不是非捆绑文件中的行。
我使用以下行构建捆绑包:
$(BROWSERIFY) public/js/app.js --debug | $(MINIFYIFY) | $(EXORCIST) public/js/build/app_bundle.js.map > public/js/build/app_bundle.js
一个简单的例子:
WebDesktop.prototype.preview = function (url) {
crash();
$window.open(url);
};
调用此方法时,我得到明显的错误:
ReferenceError: crash is not defined
at Object.p.preview (http://localhost:3000/js/build/app_bundle.js:109:490)
at l.o.viewAttachment (http://localhost:3000/js/build/app_bundle.js:157:2193)
at http://localhost:3000/js/build/app_bundle.js:12:27196
at http://localhost:3000/js/build/app_bundle.js:13:2335
at l.$eval (http://localhost:3000/js/build/app_bundle.js:11:23528)
at l.$apply (http://localhost:3000/js/build/app_bundle.js:11:23806)
at HTMLSpanElement.<anonymous> (http://localhost:3000/js/build/app_bundle.js:13:2317)
at HTMLSpanElement.o.event.dispatch (http://localhost:3000/js/vendor/offline/jquery.min.js:3:6055)
at HTMLSpanElement.r.handle (http://localhost:3000/js/vendor/offline/jquery.min.js:3:2830) angular.js:9778
但所有参考文献都缩小了并且在主要包中。
我正在寻求改善源代码行为的建议,并能够完全调试我的应用程序。
答案 0 :(得分:0)
浏览器现在不支持堆栈跟踪中的源映射解析。
请参阅此问题:
以及这两个问题:
AngularJS - Stack trace ignoring source map
Will the source mapping in Google Chrome push to Error.stack