React-query :: Query Invalidation

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(무효화)되면

  1. useQuery가 사용하는 staleTime이라는 속성이 변경된다.
  2. 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