响应拦截器对err处理
This commit is contained in:
		
							parent
							
								
									f0ffd89af2
								
							
						
					
					
						commit
						67073c5e86
					
				| @ -127,7 +127,7 @@ const actions = { | ||||
|   async login({ commit }, data) { | ||||
|     const res = await login(data) | ||||
|     console.log('将登录页的逻辑移动到 vuex 里面') | ||||
|     commit('setToken', res.data.data) | ||||
|     commit('setToken', res) | ||||
|   } | ||||
| } | ||||
| 
 | ||||
|  | ||||
| @ -1,4 +1,5 @@ | ||||
| import axios from 'axios' | ||||
| import { Message } from 'element-ui' | ||||
| // import { MessageBox, Message } from 'element-ui'
 | ||||
| // import store from '@/store'
 | ||||
| // import { getToken } from '@/utils/auth'
 | ||||
| @ -84,7 +85,20 @@ service.interceptors.request.use( | ||||
| 
 | ||||
| // 响应拦截器
 | ||||
| service.interceptors.response.use(res => { | ||||
|   return res | ||||
|   const { message, data, success } = res.data | ||||
|   if (success) { | ||||
|     // 已经对res的成功与否进行处理, 直接返回data
 | ||||
|     return data | ||||
|   } else { | ||||
|     Message.error(message || '系统错误') // 饿了么弹窗组件
 | ||||
|     return Promise.reject(message) // 这里的reject是为了可以继续链式调用, 比如跳到login/index handleLogin catch
 | ||||
|   } | ||||
| }, err => { | ||||
|   console.dir(err) | ||||
|   // 提示错误
 | ||||
|   Message.error(err.message) | ||||
|   // reject
 | ||||
|   return Promise.reject(err) | ||||
| }) | ||||
| 
 | ||||
| export default service | ||||
|  | ||||
| @ -126,9 +126,10 @@ export default { | ||||
|     }, | ||||
|     async handleLogin() { | ||||
|       try { | ||||
|         await this.$refs.loginForm.validate() | ||||
|         this.$store.dispatch('user/login', this.loginForm) | ||||
|         await this.$refs.loginForm.validate() // 数据校验 | ||||
|         await this.$store.dispatch('user/login', this.loginForm) // 必须加await | ||||
|       } catch (error) { | ||||
|         console.log('捕获错误') | ||||
|         console.log(error) | ||||
|       } | ||||
|     } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user