https://yrnana.dev/post/2021-04-10-react-query-staletime-cachetime
fresh
상태에서 staleTime
(기본값 0) 이후 stale
상태로 변경됨cacheTime
(기본값 5min) 만큼 유지되다가 가비지 콜렉터로 수집됨cacheTime
이 지나기 전에 A 쿼리 인스턴스가 새롭게 mount되면, fetch가 실행되고 fresh
한 값을 가져오는 동안 캐시 데이터를 보여줌fresh
-> stale
상태로 변경되는데 걸리는 시간fresh
상태일때는 쿼리 인스턴스가 새롭게 mount 되어도 네트워크 fetch가 일어나지 않는다.staleTime
이 지나지 않았다면 unmount 후 mount 되어도 fetch가 일어나지 않는다.inactive
상태일 때 캐싱된 상태로 남아있는 시간inactive
상태로 변경되며, 캐시는 cacheTime
만큼 유지된다.cacheTime
이 지나면 가비지 콜렉터로 수집된다.cacheTime
이 지나기 전에 쿼리 인스턴스가 다시 마운트 되면, 데이터를 fetch하는 동안 캐시 데이터를 보여준다.cacheTime
은 staleTime
과 관계없이, 무조건 inactive 된 시점을 기준으로 캐시 데이터 삭제를 결정한다.true
, 캐싱 데이터가 있어서 백그라운드에서 fetch되더라도 true
true
일목요연한 정리 감사합니다.