인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

심현석님의 프로필 이미지

작성한 질문수

Next + React Query로 SNS 서비스 만들기

팔로잉 게시글, 검색 결과 불러오기

queryKey 질문

작성

·

66

0

혹시 useQuery에 작성하는 queryKey와 queryFn함수에 작상하는 next.tags의 queryKey는 무슨 상관관계가 있는 건가요 ? 둘의 값이 무조건 같아야 하는 줄 알았는데 useQuery엔 searchParams / queryFn함수엔 searchParams.q로 작성하셔서 여쭤봅니다. (next.tags엔 문자열만 가능한 점은 알고있습니다 ! )

답변 2

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

서로 관련 없습니다. 각자 캐싱 로직의 키일 뿐입니다.

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다. 심현석님.

React Query의 queryKeynext.tags는 데이터 캐싱과 재검증에 활용되는 중요한 요소이지만, 반드시 같아야 할 필요는 없습니다.

  • queryKey: React Query에서 데이터를 캐싱하고 관리하기 위해 사용되는 키입니다. 각 쿼리 호출은 고유의 queryKey를 가져야 하며, 이를 통해 React Query는 캐시된 데이터를 식별하고 적절히 갱신합니다. useQuery에서 제공된 queryKey 배열은 데이터 요청의 고유성을 보장합니다.

  • next.tags: Next.js에서의 next.tags는 데이터의 특정 상태를 재검증하기 위해 사용됩니다. no-store 캐시 설정을 사용하지 않는 경우, 데이터를 언제 다시 가져올지 결정하는 기준이됩니다. next.tags는 문자열 배열로 작성되며, 특정 데이터가 변경되었을 때 이를 감지하여 데이터를 다시 페치하도록 합니다.

두 개념은 각자의 맥락에서 사용되며 독립적으로 동작할 수 있습니다. queryKey는 React Query 내에서 데이터 캐싱에 중점을 두며, next.tags는 데이터 변경 및 재검증 프로세스를 효율화합니다.

참고할 수 있는 유사 질문:

  1. fetch 옵션에 cache no-store 사용하면 tags 사용안해도 되는거 아닌가요???
  2. react-query onMutate vs onSuccess / mutate vs mutateasync 가장 적절한 쓰임이 궁금합니다.

위 링크에서 유사한 상황을 다룬 질문과 답변을 확인하실 수 있습니다. 각각의 사용 예시에 대해 살펴보시면 더욱 이해가 깊어질 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.