본문 바로가기
Frontend2025년 4월 18일2분 읽기

Tanstack Query (React Query) v5 심화 가이드

YS
김영삼
조회 1845
Tanstack Query (React Query) v5 심화 가이드

v5 변경사항

Tanstack Query v5는 모든 쿼리 옵션을 객체 형태로 통일했습니다.

낙관적 업데이트

const mutation = useMutation({
  mutationFn: updateTodo,
  onMutate: async (newTodo) => {
    await queryClient.cancelQueries({ queryKey: ["todos"] });
    const previous = queryClient.getQueryData(["todos"]);
    queryClient.setQueryData(["todos"], (old) =>
      old.map(t => t.id === newTodo.id ? newTodo : t)
    );
    return { previous };
  },
  onError: (err, vars, context) => {
    queryClient.setQueryData(["todos"], context.previous);
  },
  onSettled: () => {
    queryClient.invalidateQueries({ queryKey: ["todos"] });
  },
});

댓글 4

주주니어개발자소연1년 전
M1/M2 맥에서도 문제없이 동작하나요?
개개발자준호1년 전
실전 경험이 녹아있어서 더 와닿았습니다.
김김영삼주니어개발자소연1년 전

Apple Silicon에서도 잘 동작합니다. Rosetta 없이 네이티브로 됩니다.

스스타트업개발자(guest)1년 전
초보자도 이해하기 쉽게 잘 설명해주셨네요.
Ctrl+Enter로 등록