typescript - catch 块中的对象类型为 'unknown'
我正在尝试创建一个 axios 抽象,但在 catch 块中出现了这个错误。
对象的类型为'未知'。
import axios, { AxiosResponse } from "axios";
import { injectable } from "inversify";
import { HttpRequest, HttpResponse, IHttp } from "../../interfaces/Ihttp";
@injectable()
export class AxiosHttpClient implements IHttp {
async request(params: HttpRequest): Promise<HttpResponse> {
let axiosResponse: AxiosResponse;
try {
axiosResponse = await axios.request({
url: params.url,
method: params.method,
data: params.body,
headers: params.headers,
});
} catch (error) {
axiosResponse = error.response;
}
return {
statusCode: axiosResponse.status,
data: axiosResponse.data,
};
}
}
答案#1
我通过在 tsconfig.json 中将 useUnknownInCatchVariables 选项设置为 false 解决了这个问题