UNPKG

press-next

Version:

Vue3 组件库,支持 Composition API

37 lines (31 loc) 1.05 kB
import { Toast } from '../../toast/index'; import type { IInterceptor } from '../types'; function $t(a: string) { return a; } /** * 处理网络错误提示 */ export default class ShowNetworkErrorToastInterceptor implements IInterceptor { interceptor(param: any, extra: any): Promise<[boolean, any]> { if (param?.message) { if (param.message.indexOf('timeout') > -1) { param.msg = '接口超时,稍后试试吧'; } if (param.message.indexOf('Network Error') > -1) { param.msg = '网络不好,请稍后重试'; } } if (extra.showMsgToast) { // 抛出异常错误,方便业务侧上报 // @ts-ignore window.app?.$ebus?.emit('response-error-event', param); // 特定错误才提示,避免用户看到莫名奇妙的错误提示 if (param?.message && (param.message.indexOf('timeout') > -1 || param.message.indexOf('Network Error') > -1)) { Toast?.showFail($t(param.msg)); } } return Promise.resolve([false, param]); } }