在ApolloClient useQuery的onError回调函数中,通过手动抛出错误来返回错误信息。代码示例如下:
import { useQuery, gql } from '@apollo/client';
const MY_QUERY = gql`
query MyQuery {
someData
}
`;
function MyComponent() {
const { loading, data, error } = useQuery(MY_QUERY, {
onError: (apolloError) => {
console.log('Apollo error:', apolloError);
throw new Error('Custom error message');
},
});
if (loading) return Loading...
;
if (error) return Error: {error.message}
;
return {data.someData};
}
在上例中,我们在ApolloClient useQuery的onError回调函数中,先通过console.log打印Apollo错误信息,然后手动抛出一个自定义错误信息的Error对象。这样我们就可以在组件中处理抛出的错误信息了。