@@ -58,47 +58,32 @@ const transform: AxiosTransform = {
58
58
59
59
// 这里逻辑可以根据项目进行修改
60
60
const hasSuccess = data && Reflect . has ( data , 'code' ) && code === ResultEnum . SUCCESS ;
61
- if ( ! hasSuccess ) {
62
- if ( message ) {
63
- // errorMessageMode=‘modal’的时候会显示modal错误弹窗,而不是消息提示,用于一些比较重要的错误
64
- if ( options . errorMessageMode === 'modal' ) {
65
- createErrorModal ( { title : t ( 'sys.api.errorTip' ) , content : message } ) ;
66
- } else if ( options . errorMessageMode === 'message' ) {
67
- createMessage . error ( message ) ;
68
- }
69
- }
70
- throw new Error ( message ) ;
71
- //return errorResult;
72
- }
73
-
74
- // 接口请求成功,直接返回结果
75
- if ( code === ResultEnum . SUCCESS ) {
61
+ if ( hasSuccess ) {
76
62
return result ;
77
63
}
78
- // 接口请求错误,统一提示错误信息
79
- if ( code === ResultEnum . ERROR ) {
80
- if ( message ) {
81
- createMessage . error ( data . message ) ;
82
- throw new Error ( message ) ;
83
- } else {
84
- const msg = t ( 'sys.api.errorMessage' ) ;
85
- createMessage . error ( msg ) ;
86
- throw new Error ( msg ) ;
87
- }
88
- //return errorResult ;
89
- }
90
- // 登录超时
91
- if ( code === ResultEnum . TIMEOUT ) {
92
- const timeoutMsg = t ( 'sys.api.timeoutMessage' ) ;
93
- createErrorModal ( {
94
- title : t ( 'sys.api.operationFailed ' ) ,
95
- content : timeoutMsg ,
96
- } ) ;
97
- throw new Error ( timeoutMsg ) ;
98
- //return errorResult;
64
+
65
+ // 在此处根据自己项目的实际情况对不同的code执行不同的操作
66
+ // 如果不希望中断当前请求,请return数据,否则直接抛出异常即可
67
+ switch ( code ) {
68
+ case ResultEnum . TIMEOUT :
69
+ const timeoutMsg = t ( 'sys.api.timeoutMessage' ) ;
70
+ createErrorModal ( {
71
+ title : t ( 'sys.api.operationFailed' ) ,
72
+ content : timeoutMsg ,
73
+ } ) ;
74
+ throw new Error ( timeoutMsg ) ;
75
+ default :
76
+ if ( message ) {
77
+ // errorMessageMode=‘modal’的时候会显示modal错误弹窗,而不是消息提示,用于一些比较重要的错误
78
+ // errorMessageMode='none' 一般是调用时明确表示不希望自动弹出错误提示
79
+ if ( options . errorMessageMode === 'modal' ) {
80
+ createErrorModal ( { title : t ( 'sys.api.errorTip ' ) , content : message } ) ;
81
+ } else if ( options . errorMessageMode === 'message' ) {
82
+ createMessage . error ( message ) ;
83
+ }
84
+ }
99
85
}
100
- throw new Error ( t ( 'sys.api.apiRequestFailed' ) ) ;
101
- //return errorResult;
86
+ throw new Error ( message || t ( 'sys.api.apiRequestFailed' ) ) ;
102
87
} ,
103
88
104
89
// 请求之前处理config
0 commit comments