页面异常一般分以下集中情况
1.js异常:语法错误、运行时错误、跨域脚本
// try...catch 针对某个代码块使用try...catch,进行运行时错误捕捉, 无法捕捉语法错误,
try {
// ...代码
}catch(e) {
console.log(e)
}
// window.onerror 这个代码需要分离出去,并且比其他脚本先执行;跨域的资源需要特殊头部处理;
// 无法捕捉网络错误
window.onerror = function(msg, url, line, col, error) {
return true
}
2.资源加载异常:js、css、img
// 可以捕捉网络请求异常,但是无法判断HTTP的状态是404还是其他,需要结合服务器端日志排查
window.addEventListener('error', (msg,url,row,col,error) => {
})
3.ajax网络请求异常
// 对发送请求进行一个拦截
4.promise异常
window.addEventListener('unhandledrejection', (e) => {
e.preventDefault()
})
5.vue项目中全局异常
Vue.config.errorHandler = (err, vm, info) => {
}
最后进行一个异常的 上报
本文详细探讨了前端开发中常见的js异常处理,包括try...catch、window.onerror、ajax网络请求异常、Promise和Vue全局错误处理。同时介绍了资源加载异常及如何上报异常,帮助开发者有效应对常见问题。
1194

被折叠的 条评论
为什么被折叠?



