일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- CORS
- map
- RTK Query
- 리터럴 타입
- 투포인터
- useAppDispatch
- 공변성
- 결정 알고리즘
- TS
- SSR
- 이분 검색
- ESlint
- CI/CD
- autosize
- tailwind
- app router
- dfs
- 태그된 유니온
- 무한 스크롤
- async/await
- Promise
- React
- 반공변성
- 호이스팅
- Cypress
- Jest
- 타입 좁히기
- recoil
- webpack
- 인터섹션
Archives
- Today
- Total
짧은코딩
isFetching vs isLoading 본문
반응형
isFetching vs isLoading

isFetching은 비동기 쿼리가 해결되지 않았음을 의미한다. 즉, feching을 완료하지 않았다는 의미이다. async 함수가 해결되지 않았고 아직 데이터를 가져오는 중이다.
isLoading은 isFetching의 하위 집합이며 데이터를 가져오는 상태라는 것을 의미한다. 쿼리 함수가 해결되지 않았고 캐시 된 데이터가 없다. 표시할 캐시 데이터도 없다는 의미이다. 즉, isLoading 상태이면 isFetching은 참이다.
=> 별 차이가 없어 보일 수 있지만 페이지네이션을 할 때, 캐시 된 데이터가 있을 때와 없을 때를 구분해야 한다.
-예시
if (isFetching) return <h3>Loading...</h3>;
이 코드에서는 캐시 된 데이터의 존재와 상관없이 "Loading..."을 보여준다. prefetch 이전에 행동하고 이는 nextPage 데이터를 포함한 캐시 데이터를 미리 가져오기 전이란 의미이다. 위 코드에서는 캐시에 데이터가 존재하는 것과 관련이 없어서 캐시에 데이터가 있어도 늘 나타날 것이다.
반응형
'인프런, 유데미 > React-Query' 카테고리의 다른 글
무한 스크롤 (0) | 2023.03.31 |
---|---|
Mutation (0) | 2023.03.30 |
Prefetching을 해야하는 이유 (0) | 2023.03.29 |
쿼리 key의 중요성(다른 요청 시 값이 안바뀌는 문제) (0) | 2023.03.29 |
리액트 쿼리, staleTime (0) | 2023.03.28 |