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

김수민님의 프로필 이미지
김수민

작성한 질문수

[리뉴얼] React로 NodeBird SNS 만들기

useQuery refetch

작성

·

2.3K

0

제로초님 제가 react-query useQuery Hook을 사용하여 데이터를 받아왔습니다.
이 데이터 값들을 버튼 onClick 함수를 만들어서 버튼을 클릭할 때마다,
 
useQuery api 요청을 콜을 해 주고 싶습니다.
그래서 찾아보니 useQuery refetch 를 알게되었고,
refetch 함수를 onClick 함수에 넣어주었는데, 동작을 하지 않네요 ㅠㅠ.
 
useQuery api를 버튼을 클릭할 떄 마다 api call 을 해주고 싶은데 어떻게 해줘야 할까요...

답변 2

0

refetch 호출하면 안될리가 없을텐데 코드 확인해 보세요.

특별한거 없고 그냥 아래처럼 호출하면 됩니다.

const { refetch } = useQuery(쿼리키, 함수호출);


return (
<button onClick={() => refetch()}>데이터 호출</button>
)

0

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

네트워크 탭 켜고 refetch 해도 반응이없나요? 온클릭 함수는 실행되는게 맞나요?

김수민님의 프로필 이미지
김수민
질문자

네 맞습니다. 일단 버튼을 클릭하기 전에 react-query 로 데이터를 받고나서 button 을 클릭 했을 떄 refetch 를 넣어서 다시 api 재 요청 call 를 해주고 싶은데,

되질 않네요 ㅠㅠ 

react-query로 refetchInterval 를 주면 동작은 하지만, 초 단위로 계속 call 요청을 해줘서 아닌 거 같고..

다시 삽질 해 보니까 react-query 로 이미 요청을 받았으면 refetch 를 해도 재요청 call은 안되는 거 같습니다..  Interval 로 주어야 할까요?

김수민님의 프로필 이미지
김수민

작성한 질문수

질문하기