问题描述
在vue3 ts
项目中,使用axios
库调接口时报了如下错误:
Property 'code' does not exist on type 'AxiosResponse<any, any>'.ts(2339)
或者遇到 Property 'xxx' does not exist on type 'AxiosResponse<any, any>'.ts(2339)
类型问题我们该如何解决呢?
解决方法
新建一个axios.d.ts
文件,内容如下:
// 定义接口返回数据类型,这里根据后端返回去定义
interface resPage {
page: number
pageSize: number
total: number
hasNextPage: boolean
pageTotal: number
}
interface itfRes<T = {}[] | {} | []> {
code: number
message: string | undefined
data: T
reason?: string
page?: resPage
}
import * as axios from 'axios'
declare module 'axios' {
interface AxiosResponse extends itfRes
}
加上之后的效果: