我很难访问错误响应数据,代码在 javascript 上工作,我转移到打字稿,现在事情很混乱。目前我得到的“错误”类型为“未知”。ts(18046)
export const registerClient = createAsyncThunk('clients/register', async (userData: object, { rejectWithValue }) => {
try {
const response = await axiosInstance.post('/web/client/register', userData);
return response.data;
} catch (error) {
return rejectWithValue(error.response.data.error);
}
});
我尝试过的事情
return rejectWithValue((error as any).response.data.error);
- 任何意外,我都不能使用任何类型error' is of type 'unknown'
interface ErrorResponse {
error: string;
}
const errorResponse: ErrorResponse = error.response.data;
return rejectWithValue(errorResponse.error);
任何人对此都有适当的解决方案 非常感谢你
基本上,Typescript 在严格模式下会抱怨错误是
unknown
类型。
因此您可以将类型设置为
catch(error: any)
中的任何类型以使错误消失或更改
在您的 useUnknownInCatchVariables
文件中将 tsconfig.json
标记为 false:
"compilerOptions": {
"useUnknownInCatchVariables": false
}