打字稿中的 Axios 类型

Axios Type in Typescript

class.ts

axiosInstance = axios.create();

getPage(config: AxiosRequestConfig) {
  return this.axiosInstance
    .request(config)
    .then((response: AxiosResponse) => {
      return response;
    })
    .catch((error) => console.error(error));
}

index.ts

class.getPage(config).then((response: any) => {
  let page = response.data;

  console.log(page);
});

在我的 Index.ts 中,我不想写 response: any。不知何故,我太愚蠢了,无法找出响应给出/具有的类型。 AxiosResponse 是错误的,因为我 return axiosInstance.

有人可以帮我吗?

因为 getPage, .then return AxiosResponse<any, any>.catch return console.error(error) 所以类型响应是 void | AxiosResponse<any, any>

如果在 catch 你 抛出错误 而不是 return console.error() 函数,类型将是 AxiosResponse<任何,任何>