AXIOS客户端对我的useMutation的错误响应出现问题.
Axios客户端
import axios from "axios";
const client = axios.create({ baseURL: `${process.env.REACT_APP_API_HOST}/${process.env.REACT_APP_API_PREFIX}` });
export const request = ({...options}) => {
client.defaults.headers.common.Authorization = `Bearer ${JSON.parse(localStorage.getItem('userDetails')).idToken}`
client.defaults.headers.common['Content-Type'] = 'application/json';
const onSuccess = (response) => {
console.log('AXIOS !!!!! request Successful!!!', response.config.url)
return response;
};
const onError = error => {
console.error('AXIOS !!!!! Request Failed:', error.config.url);
return error
};
return client(options).then(onSuccess).catch(onError);
}
这是我的useMutatuon文件
import { useMutation, useQueryClient } from 'react-query';
import {request} from '../utils/axios';
const useAddInvestmentAction = (investment) => {
// Define the headers object
return request({
url: '/investments/investment1',
method: 'post',
data: investment,
})
}
export const useAddInvestmentData = () => {
const queryClient = useQueryClient()
return useMutation(useAddInvestmentAction,{
onSuccess: () => {
queryClient.invalidateQueries('InvestmentsData')
console.log('Investment Added Successfully!!!!!!!!!!!!!!!!!')
},
onError: (error) => {
console.log('Investment Failed!!!!!!!!!!!!!!!!!')
console.log(error)
}
})
}
export default useAddInvestmentData;
当我将URL更改为不存在URI时,我的onSuccess触发器而不是onError.Axios在错误上打印
知道为什么吗