我使用Axios和react-query的组合向服务器发出POST请求,该服务器可能会以响应代码400和验证错误进行应答。
export const axiosDefault = axios.create({
baseURL: API_LINK,
headers: {
'Content-Type': 'application/json'
},
})
const contactMutation = useMutation(
(data) => axiosDefault.post('/contact', data),
{
onSuccess: (response) => {
console.log('Success', response)
},
onError: (error) => {
console.log('Error', error)
}
}
)
但是,当调用contactMutation.mutate(someData)
时,来自服务器的错误响应不会被react查询库处理,而是向上传播。onSuccess
或onError
处理程序都不会被调用,变异的isError
属性也不会被设置。
我花了几个小时为这件事烦恼,我做错了什么?
1条答案
按热度按时间aij0ehis1#
嗨,我也遇到了同样的问题,我通过 Package API函数来尝试/捕获块并抛出捕获的错误来解决。