我正在尝试创建一个函数,该函数将接受axios实例的可选参数。我已经尝试使用AxiosInstance
进行以下操作,但是当webpack尝试转换TypeScript时,它将引发此错误:TS2304: Cannot find name 'AxiosInstance'
当我直接导入类型声明时,它有点起作用:import { AxiosInstance } from "../../node_modules/axios/index.d";
但这感觉很丑陋。有一个更好的方法吗?
例:
import axios from "axios";
export const loadFromAPI = (
url: string,
param: string,
id: number,
axiosInstance: AxiosInstance = axios.create({baseURL: url})
): Promise<any> => {
return new Promise( (resolve: (res: any) => void, reject: (err: any) => void) => {
/* ... */
});
};
另请:Axios Type Definitions
最佳答案
这是因为您没有导入AxiosInstance接口(interface)。
import axios, { AxiosInstance } from "axios";
...