인프런 커뮤니티 질문&답변
React-query 부분에서 질문이 있습니다.
작성
·
258
0
강의 언제나 잘보고 있습니다.
따로 작업하다가 난감한게 있어서 문의드립니다.
예를 들어 ["ABC"] 라는 캐시가 있다는 가정하에
A페이지, B페이지에서 해당 캐시를 사용합니다.
이때 질문이 있습니다.
- A,B 페이지에서 useQuery로 데이터를 불러올 경우 
 실수로 A와 B가 다른 queryFn이 정의 되어있을 때,
 InvalidateQueries를 해도 데이터가 미스매칭될 수 있는 가능성이 존재할까요?
- prefetchQuery 사용 시, 
 A페이지와 B페이지가 ABC라는 데이터가 공통으로 필요할 경우,
 A페이지에서 prefetchQuery를 읽어서 B로 가면 A의 ABC를 캐시해서 B에서도 사용 가능한 걸로 알고있는데요.
 이럴때 만일 B페이지로 바로 접근이 가능할 경우,
 B 페이지에서도 prefetchQuery를 적용해야 둘다 SSR이 제대로 적용되는걸까요?
답변 1
0

제로초(조현영)
지식공유자
- 네 가능합니다. 다른 페이지에서 서로 다른 함수로 데이터를 불러와 덮어씌울것입니다. 
 https://github.com/TanStack/query/discussions/4020#discussioncomment-3383934
 제작자의 답변으로는 첫 번째로 옵저버로 등록된 queryFn이라고는 하는데 말투에 확신은 없네요.
- 서버쪽에 A 페이지 통해서 불러온 캐시가 남아있고 하나의 쿼리 클라이언트에서 공유된다면 B 페이지에 바로 접근했을 때 A 페이지의 캐시를 가져올 수 있습니다. 다만 쿼리 클라이언트를 공유해주셔야 합니다. 








B로 바로 접근할때 A에서 캐시를 못 불러오면, B에서 새로 불러오는 코드를 짜야하는건가요?