axios.post('/api/user').then((res)=>{
if(res.code === 0){
// 成功
}
})
但是res这里类型提示会告诉我有data/config/headers,就是没有code。
我已经在拦截器中做了处理
axios.interceptors.response.use((response) => {
return response.data;
}, (error) => {
return Promise.reject(error);
});
请问我真实的接口返回的数据结构类似{code,data,msg}这种的数据结构类型,在哪里定义呢?
我在上面用res.code的时候希望有提示,而不是指提示data/config/headers
题主应该是使用
Typescript
编写获取到请求数据时候的代码时,由于事先在拦截器中直接获取到 response 里面的 data 内容。但是接着写的时候遇到了 ts 报错的问题 (或者只是单纯的想在前端使用 TS 定义返回内容类型)这种情况我是编写一个类型声明文件
typing.d.ts
来重新修改 axios 原来的 AxiosResponse 这个接口来自定义一个自己想要的响应体结构去处理的:TS 代码:
然后在代码中就有了智能提示,同时也不会报错了。
如图↓

另外,我也是正在学习前端的新手,如果答得不对请包涵。