前端错误捕获

86 阅读1分钟

一.全局错误捕获

1.window.error

可以捕获 JavaScript 运行时错误。

window.onerror = function(message, source, lineno, colno, error) { console.error('Global Error:', message, source, lineno, colno, error); };

2.window.addEventListener('unhandledrejection',()=>{})

用于捕获未处理的 Promise 拒绝错误。

window.addEventListener('unhandledrejection', function(event) { console.error('Unhandled Rejection:', event.reason); });

3.Vue 的 errorHandler

可以全局注册错误处理器。

Vue.config.errorHandler = function (err, vm, info) { console.error('Vue Error:', err, info); };

二.局部错误捕获

1.try catch

常用于捕获async和await

2.Vue 的 errorCaptured钩子

捕获vue组件中的错误

export default 
{ errorCaptured(err, vm, info) { 
console.error('Error captured in Vue:', err, info); return false; // 返回 false 以继续传播 } 
};

3.catch方法捕获promsie

基于promise的异常穿透捕获promise的错误