웹 (WEB)/공부
React-query :: Query Invalidation
희은w
2021. 7. 10. 12:37
query가 오래 되었다는 것을 판단하고 다시 fetch해올 때, queryClient.invalidateQueries 함수를 사용한다.
https://react-query.tanstack.com/guides/query-invalidation
Query Invalidation
Query Invalidation Waiting for queries to become stale before they are fetched again doesn't always work, especially when you know for a fact that a query's data is out of date because of something the user has done. For that purpose, the QueryClient has a
react-query.tanstack.com
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 하게 한다.
반응형