element-ui+axios 页面存在多个request请求时,且这些请求之间没有关联,互不影响的情况下,当网络发生异常或其他异常情况下,有可能会出现多个请求都不成功,页面弹出多个异常弹窗,如何值弹出一个异常提示。
let messageInstance = null;
const resetMessage = (options)=>{
//关闭上一个弹窗,继续下一个弹窗
if(messageInstance){
messageInstance.close()
}
messageInstance = Message(options)
}
在 utils/request页, 响应拦截器中需要异常弹窗的地方引用:
service.interceptors.response.use(res => {
// 未设置状态码则默认成功状态
const code = res.data.code || 200;
if (code === 401) {
} else if (code === 500) {
resetMessage({
message: msg,
type: 'error'
})
} else if (code !== 200) {
} else {
}
})