【发布时间】:2019-04-05 10:03:36
【问题描述】:
我注意到,在 chrome.tabs 调用的回调中发生的错误不会报告滚动条项目。例如以下错误不会被报告:
chrome.tabs.getCurrent(function(currentTab) {
throw "This is critical";
});
如果throw 语句在 chrome.tabs 回调之外,它会按预期报告给滚动条。
无论它发生在后台脚本中,还是通过chrome-extension:// url 访问的扩展页面中,行为都是相同的。
是否有允许滚动条跟踪这些回调中的错误的解决方案?
chrome API 回调中抛出的错误,似乎没有被onerror 监听器捕获。这是来自 chromium 项目的相关讨论:https://bugs.chromium.org/p/chromium/issues/detail?id=357568
【问题讨论】:
-
可能与 chrome 扩展 API 中的所有回调都是异步调用的事实有关。我不知道 Rollbar,但也许它需要一些明确的调整来处理它。
-
@wOxxOm 它与扩展中的其他回调一起使用,例如 addEventListener 和 setTimeout。据我了解,这些也是异步的。
-
[嗯,另一个猜测] 也许 Rollbar 钩住了标准的 DOM 东西,而 chrome API 不是标准的,所以它没有被钩住,你需要以某种方式手动完成。
标签: google-chrome-extension rollbar