如何在 Google Chrome Canary 中打开未捕获异常时暂停?

Posted

技术标签:

【中文标题】如何在 Google Chrome Canary 中打开未捕获异常时暂停?【英文标题】:How to turn on Pause On Uncaught Exceptions in Google Chrome Canary? 【发布时间】:2015-05-29 13:59:12 【问题描述】:

在本文中,它讨论了在未捕获的异常上打开暂停。 https://developer.chrome.com/devtools/docs/javascript-debugging

我只能在 Chrome 和 Canary 中看到 Pause On Caught Exceptions。我使用的是 Chrome Canary 版本 43.0.2344.2 canary(64 位)。

我收到了 Uncaught SyntaxError: Unexpected token :, 来源到某个位置(例如 VM272),如果不追踪调用堆栈,很难追踪。

我搜索了一下,发现可以添加

> window.onerror = function()  debugger;

在控制台中,但这并没有让我得到堆栈跟踪。 Scope 窗口确实提供了很多变量信息,但我还是有点迷茫。

【问题讨论】:

相关***.com/questions/2233339/… 【参考方案1】:

文档有点过时了。

在新的 Chrome 版本中,“异常暂停”按钮不再在 3 种状态之间切换(禁用、“异常暂停”、 Pause on Uncaught Exceptions")但仅在两种状态之间(disabled 和“Pause on Exception”)。

为了也能够中断捕获的异常,他们引入了此复选框(如果您在GWT 中有一个全局异常处理程序但仍想在抛出异常时中断,这很有用)。

因此,如果您没有捕捉到异常,那么您在屏幕截图中显示的设置应该可以工作。

【讨论】:

这听起来很合理,谢谢。但为什么错误 Uncaught SyntaxError 不会强制暂停? 应该的。当您检查“暂停捕获的异常”时它会中断吗? 不,它没有。 (那太容易了。)我应该创建一个关于如何调试此错误的新问题。 我和 OP 有同样的问题。这个解释指出了应该发生的事情,而不是实际发生的事情(即未捕获的错误不会(及时式)停止调试器)。 我可以确认,我的调试器不会停止似乎未捕获的异常。 =(

以上是关于如何在 Google Chrome Canary 中打开未捕获异常时暂停?的主要内容,如果未能解决你的问题,请参考以下文章

Chrome 开发者工具工作区映射

google chrome浏览器看视频最上面总有一条绿条怎么解决?

Chrome 新一代 Material Design UI 来袭

用于禁用 Chrome 中所有类型缓存的命令行标志

Android Studio 3.0 Canary

Android Studio 3.0 Canary