Просмотр исходного кода

😦用户自定义处理异常
示例
``` ts
// 增加 { customCatch: true } 开启自定义处理异常
const [err, res] = await feature(getAPI(XxxxxxxxxApi).apiXxxxxxxGet(params, { customCatch: true }));
if (err) {
//自定义处理异常
ElNotification({ title: '出错了', message: `添加产品 【${scope.row.serialNo}】 ${err?.message ?? err}`, type: 'error' });
} else {
console.log(res);
//业务逻辑
}
```

Signed-off-by: KaneLeung <kk.xiaolan@gmail.com>

KaneLeung 2 лет назад
Родитель
Сommit
d0eecd9fa5
1 измененных файлов с 9 добавлено и 3 удалено
  1. 9 3
      Web/src/utils/axios-utils.ts

+ 9 - 3
Web/src/utils/axios-utils.ts

@@ -148,7 +148,10 @@ axiosInstance.interceptors.response.use(
 			} else {
 				message = serve.message;
 			}
-			ElMessage.error(message);
+			// 用户自定义处理异常
+			if (!res.config?.customCatch) {
+			    ElMessage.error(message);
+			}
 			throw new Error(message);
 		}
 
@@ -162,8 +165,11 @@ axiosInstance.interceptors.response.use(
 			}
 		}
 
-		// 响应错误代码及自定义处理
-		ElMessage.error(error);
+		// 用户自定义处理异常
+		if (!error.config?.customCatch) {
+		    // 响应错误代码及自定义处理
+			ElMessage.error(error);
+		}
 
 		return Promise.reject(error);
 	}