修改响应类型

This commit is contained in:
D 2023-09-01 17:54:28 +08:00
parent 3da37b66f3
commit b86676570b
3 changed files with 24 additions and 17 deletions

View File

@ -30,11 +30,17 @@ export interface RequestUploadConfig extends BaseRequestConfig {
formData: any formData: any
} }
export interface ResponseData { export interface ResponseData<T> {
/** 响应码 */ /** 响应码 */
code: number, code: number,
/** 响应数据 */ /** 响应数据 */
data: any, data: any,
/** 响应信息 */ /** 响应信息 */
msg: string msg: string
/** 图片路径 */
imgUrl: string,
/** 数据总数 */
total:number,
/** 表格数据 */
rows:Array<T>,
} }

View File

@ -8,7 +8,7 @@ import { RequestConfig, ResponseData } from '@/types/request'
let timeout = 10000 let timeout = 10000
const baseUrl = config.baseUrl const baseUrl = config.baseUrl
const request = (config: RequestConfig): Promise<ResponseData> => { const request = <T>(config:RequestConfig):Promise<ResponseData<T>> => {
// 是否需要设置 token // 是否需要设置 token
const isToken = (config.headers || {}).isToken === false const isToken = (config.headers || {}).isToken === false
config.header = config.header || {} config.header = config.header || {}
@ -37,7 +37,7 @@ const request = (config: RequestConfig): Promise<ResponseData> => {
return return
} */ } */
const res = response const res = response
const data: ResponseData = res.data as ResponseData const data:ResponseData<T> = res.data as ResponseData<T>
const code = data.code || 200 const code = data.code || 200
// @ts-ignore // @ts-ignore
const msg:string = errorCode[code] || data.msg || errorCode['default'] const msg:string = errorCode[code] || data.msg || errorCode['default']
@ -58,7 +58,8 @@ const request = (config: RequestConfig): Promise<ResponseData> => {
reject(code) reject(code)
} }
resolve(data) resolve(data)
}).catch(error => { })
.catch(error => {
let { message } = error let { message } = error
if (message === 'Network Error') { if (message === 'Network Error') {
message = '后端接口连接异常' message = '后端接口连接异常'

View File

@ -3,12 +3,12 @@ import config from '@/config'
import { getToken } from '@/utils/auth' import { getToken } from '@/utils/auth'
import errorCode from '@/utils/errorCode' import errorCode from '@/utils/errorCode'
import { toast, showConfirm, tansParams } from '@/utils/common' import { toast, showConfirm, tansParams } from '@/utils/common'
import { RequestUploadConfig } from '@/types/request' import { ResponseData, RequestUploadConfig } from '@/types/request'
let timeout = 10000 let timeout = 10000
const baseUrl = config.baseUrl const baseUrl = config.baseUrl
const upload = (config:RequestUploadConfig) => { const upload = <T>(config:RequestUploadConfig):Promise<ResponseData<T>> => {
// 是否需要设置 token // 是否需要设置 token
const isToken = (config.headers || {}).isToken === false const isToken = (config.headers || {}).isToken === false
config.header = config.header || {} config.header = config.header || {}