处理异常页面

This commit is contained in:
2026-05-25 11:57:30 +08:00
parent d0204a5ab6
commit 0a1906e11d
1 changed files with 23 additions and 0 deletions

View File

@ -31,12 +31,35 @@ const hasError = ref(false)
const errorMessage = ref('')
let unwatchRoute: (() => void) | null = null
// API
const isApiError = (err: any): boolean => {
console.log('err:', err);
// axios config
if ((err as any).config) return true
//
if (err.message === 'Network Error') return true
//
if (err.message?.includes('timeout') || err.message?.includes('Timeout')) return true
//
if (err.message?.includes('cancel') || err.name === 'CanceledError') return true
//
if (err.message?.includes('request') || err.message?.includes('Request') || err.data || err.msg) return true
return false
}
//
onErrorCaptured((err: Error, instance: any, info: string) => {
console.error(' ErrorBoundary 捕获到错误:', err)
console.error('错误来源组件:', instance?.$options?.name || '未知组件')
console.error('错误信息:', info)
// API API
if (isApiError(err)) {
console.log('API 请求错误,由 API 模块处理')
return false
}
//
hasError.value = true
errorMessage.value = err.message || '未知错误'