Javascript 带Sentry的Vue CLI 3-如何使用Vue';s config.errorHandler?
我如何结合使用 除了应用程序中的Sentry之外,我还想捕获错误,但一旦实现config.errorHandler,我就会覆盖Sentry实现 main.js:Javascript 带Sentry的Vue CLI 3-如何使用Vue';s config.errorHandler?,javascript,vue.js,error-handling,sentry,Javascript,Vue.js,Error Handling,Sentry,我如何结合使用 除了应用程序中的Sentry之外,我还想捕获错误,但一旦实现config.errorHandler,我就会覆盖Sentry实现 main.js: import * as Sentry from "@sentry/browser"; Sentry.init({ dsn: "my dsn", integrations: [new Sentry.Integrations.Vue({ Vue })] }); // This prevents sentry from being
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处理错误后调用它
在这种情况下,在将Vue
构造函数传递给new Sentry.Integrations.Vue({Vue})
之前,应该先声明自定义errorHandler
对于上面的代码示例,只需切换自定义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 })]
});
您是否尝试过在自定义代码之后的
errorHandler
末尾抛出错误<代码>抛出消息,在您的情况下。@aBiscuit是的,相同的结果。