πŸ“šΒ Reference


πŸ“œΒ Chapter


useQuery

QueryClient

β€£

useMutation


const {
  data,
  error,
  isError,
  isIdle,
  isLoading,
  isPaused,
  isSuccess,
  failureCount,
  failureReason,
  mutate,
  mutateAsync,
  reset,
  status,
} = useMutation({
  mutationFn,
  gcTime,
  mutationKey,
  networkMode,
  onError,
  onMutate,
  onSettled,
  onSuccess,
  retry,
  retryDelay,
  useErrorBoundary,
  meta
})

mutate(variables, {
  onError,
  onSettled,
  onSuccess,
})

기본 ꡬ쑰


const mutation = useMutation({
  mutationFn: (newTodo) => {
    return axios.post('/todos', newTodo);
  },
  onSuccess: () => {
    // 성곡 μ‹œ 둜직 (예: μΊμ‹œ λ¬΄νš¨ν™”)
    console.log('데이터 μ €μž₯ 성곡!');
  },
  onError: (error) => {
    // μ—λŸ¬ λ°œμƒ μ‹œ 둜직
    console.log('μ—λŸ¬ λ°œμƒ:', error.message);
  },
});

// μ‹€μ œ μ‚¬μš© μ‹œ
const handleSubmit = () => {
  mutation.mutate({ id: 1, title: 'TanStack Query κ³΅λΆ€ν•˜κΈ°' });
};

λ°˜ν™˜ν•˜λŠ” μ£Όμš” μƒνƒœ κ°’