query가 오래 되었다는 것을 판단하고 다시 fetch해올 때, queryClient.invalidateQueries 함수를 사용한다.
https://react-query.tanstack.com/guides/query-invalidation
invalidateQueries
invalidateQueries에 의해 invalidate(무효화)되면
- useQuery가 사용하는 staleTime이라는 속성이 변경된다.
- rendering도 다시 한다.
Query filter
string으로 invalidateQueries에 매개변수를 넘겨주면 해당 string을 포함하는 array를 가진 모든 query가 invalidate된다.
이 때, {exact: true} 옵션을 주면 정확히 해당 string만을 포함하는 query만 invalidate된다.
함수에 매개변수로 predicate 속성 함수를 넘겨주게 되면 해당 함수는 cache 내의 query들을 매개변수로 받아서 invalidate 할 지 말지를 boolean으로 return 하게 한다.
반응형
'웹 (WEB) > 공부' 카테고리의 다른 글
OAuth 2.0 (0) | 2021.07.22 |
---|---|
React-query :: api fetch 시 사용하는 라이브러리 (0) | 2021.07.10 |
React-query :: Mutations (0) | 2021.07.10 |
React-query :: Query (0) | 2021.07.10 |
DeepLink란? :: 원링크, 딥링크, 디퍼드 딥링크 (4) | 2021.07.10 |
Comment