【发布时间】:2018-06-07 14:17:08
【问题描述】:
在 Chrome 中,我希望能够在 我的应用程序 中中断/暂停未捕获的异常,但这在 Angular 中似乎不起作用。这可能吗?
看起来 zone.js 捕获了它们并将它们记录到控制台,因此 'pause on exceptions' 功能不起作用,因为它们被捕获了异常。
示例错误:
VM2031:34 ERROR Error: Uncaught (in promise): UnsupportedAuthorityValidation
at resolvePromise (zone.js:824)
at resolvePromise (zone.js:795)
at eval (zone.js:873)
at ZoneDelegate.invokeTask (zone.js:425)
at Object.onInvokeTask (core.js:4744)
at ZoneDelegate.invokeTask (zone.js:424)
at Zone.runTask (zone.js:192)
at drainMicroTaskQueue (zone.js:602)
at <anonymous>
【问题讨论】:
-
是的 zone.js 通常会捕获来自 Angular 的错误。您仍然可以在 chrome 中打开源文件并在其中添加断点,但这可能很困难,因为 Angular/Typescript/(如果您使用的是 webpack,则可能是 webpack)输出的代码可能与您编写的代码不同。我会考虑通过你的 IDE 添加断点,你有什么 IDE?
-
我正在使用 VS Code。是的,我正在使用 Webpack。 @TommyMay
-
我觉得我试图解释一些我没有做过的事情会对你造成伤害。我使用 IntelliJ,它支持使用 Typescript 源映射进行调试。这篇文章似乎相当于 VS Code medium.com/@dupski/…Good Luck!
-
是否有某个事件导致异常被抛出?例如。点击一个按钮。
-
@spottedmahn 你找到办法了吗?
标签: javascript angular google-chrome-devtools