javascript - Vue CLI 3 with Sentry - 如何使用 Vue 的 config.errorHandler?

标签 javascript vue.js error-handling sentry

如何使用 Vue's config.errorHandler结合Sentry for Vue

除了 Sentry 之外,我还想在应用程序中捕获错误,但是一旦我实现了 config.errorHandler,我就会覆盖 Sentry 实现。

ma​​in.js:

import * as Sentry from "@sentry/browser";

Sentry.init({
  dsn: "my dsn",
  integrations: [new Sentry.Integrations.Vue({ Vue })]
});

// This prevents sentry from being used
Vue.config.errorHandler = (msg, vm , info) => {
  alert(info)
}

最佳答案

当 Sentry 覆盖 Vue.config.errorHandler 时, 它保存对先前声明的引用 errorHandler并在 Sentry 处理错误后调用它。 source

在这种情况下,声明自定义 errorHandler应该在 Vue 之前完成构造函数已传递给 new Sentry.Integrations.Vue({ Vue }) .

对于上面的代码示例,只需切换自定义 errorHandler 的顺序和 Sentry.init()应该可以解决问题。

import * as Sentry from "@sentry/browser";    

Vue.config.errorHandler = (msg, vm , info) => {
  alert(info)
}

Sentry.init({
  dsn: "my dsn",
  integrations: [new Sentry.Integrations.Vue({ Vue })]
});

关于javascript - Vue CLI 3 with Sentry - 如何使用 Vue 的 config.errorHandler?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53300040/

相关文章:

javascript - 尝试以列表格式设置和检索本地存储变量

javascript - 使用ajax加载wav文件

go - 生产中的 vue-router(使用 Go 服务)

php - 在 PHP 中返回错误对象是坏习惯吗?

javascript - 在 EaselJS 中缓存 SpriteSheets

javascript - Jquery 对话框内容有时会返回旧数据

javascript - 使用 Axios 捕获并处理连接拒绝错误

javascript - 直接在 HTML 标签中使用 Vue-JS 自定义辅助函数

php - 防止php在大脚本代码继续出错时停止运行

ios - 神秘的 UIActivityIndi​​catorView 错误?