add errorHandler

This commit is contained in:
sc 2021-06-23 17:01:05 +08:00
parent b420bd80bf
commit 5dd5ad72ab
2 changed files with 31 additions and 0 deletions

View File

@ -11,6 +11,7 @@ import api from './api'
import tool from './utils/tool'
import http from "./utils/request"
import permission from './utils/permission'
import errorHandler from './utils/errorHandler'
import scTable from './components/scTable'
import scFilterBar from './components/scFilterBar'
import scUpload from './components/scUpload'
@ -32,6 +33,9 @@ app.use(store);
app.use(router);
app.use(ElementPlus, {size: 'small', locale: locale});
//全局代码错误捕捉
app.config.errorHandler = errorHandler
//注册全局组件
app.component('scTable', scTable);
app.component('scFilterBar', scFilterBar);

27
src/utils/errorHandler.js Normal file
View File

@ -0,0 +1,27 @@
/**
* 全局代码错误捕捉
* 比如split一个null 就会被捕捉到
*/
import { ElNotification } from 'element-plus';
export default (error)=>{
var errorMap = {
InternalError: "Javascript引擎内部错误",
ReferenceError: "未找到对象",
TypeError: "使用了错误的类型或对象",
RangeError: "使用内置对象时,参数超范围",
SyntaxError: "语法错误",
EvalError: "错误的使用了Eval",
URIError: "URI错误"
}
var errorName = errorMap[error.name] || "未知错误"
ElNotification.error({
title: errorName,
message: error
});
console.warn('[SCUI]: 捕捉到错误');
console.error(error);
}