[ReactQuery] useQuery vs useMutation

김호중·2024년 7월 19일
0

React

목록 보기
9/15

useQuery 공식문서

CRUD 중 Read시 주로 사용된다. 즉, 데이터 페칭을 목적으로 사용되며 Promise를 기반으로 하는 메서드들을 제공한다.

  • QueryKey: Array
    쿼리를 식별하기위한 유일한 key
    이는 단순 배열, 값을 포함한 배열, 변수에 의존하는 배열 등의 형태를 가질 수 있다.
    (심화: query-key-factory)
  • QueryFn
    실행할 함수
    Promise를 반환한다.

이를 통해 State(isLoading, isError, isSuccess ..), Data(data, error)등을 제공한다.

useMutation 공식문서

CRUD 중 Create, Update, Delete시 주로 사용된다.
(심화: 심화 개념)

  • mutationFn
    실행할 함수
  • helper options(onMutate, onSuccess, onError, onSettled..)
    각종 side-effects를 제어하기위한 옵션.
    이는 mutate를 호출할 때 추가로 정의(2)할 수 있는데, 기본으로 정의(1)된 option들이 먼저 동작한다.
  • mutate vs mutateAsync
    mutate는 useMutation에서 사용되는 callback이며, void를 반환한다. mutation의 결과(success, error) Promise를 사용하기 위해서는 mutateAsync를 사용해야한다.
profile
개발의 흔적을 남기고 쌓아가기 위한 일기장

0개의 댓글