Skip to content

Latest commit

 

History

History
32 lines (19 loc) · 1.5 KB

File metadata and controls

32 lines (19 loc) · 1.5 KB

오늘 배운 것

TanstackQuery

TanstackQuery란?

서버에서 데이터를 가져올 수 있게 해주고 가져온 데이터를 캐싱해서 재사용 및 데이터를 계속 최신화 시킬 수 있게 도와주는 라이브러리이다.

대표적인 기능

  • 동일한 요청 제거
  • 데이터를 최신상태로 업데이트
  • 데이터 가져오기 및 캐싱

데이터 캐싱

TanstackQuery를 활용하여 데이터를 가져올 때 항상 쿼리 키(query key)를 통해 쿼리를 식별한다.

한 번 쿼리를 요청하면 그 쿼리 응답 데이터를 메모리에 캐싱해두고 다음 쿼리 때 쿼리 키를 통한 검사로 확인 후 동일한 쿼리일 시 서버에 요청을 보내지 않고 캐싱해둔 데이터를 다시 반환한다.

반대로 저장한 쿼리 키와 다른 쿼리 키를 지닌 쿼리일 경우 캐싱해둔 데이터가 아닌 서버에 요청을 통해 받은 응답 데이터를 반환 받는다.

데이터 업데이트

TanstackQuery에서는 캐싱 되어있는 데이터가 신선(fresh)한지 상한(stale)상태인지 구분하여 데이터를 업데이트 할지 여부를 정한다. 만약 데이터가 상한 상태면 다시 쿼리 요청을 통해 데이터를 신선한 상태로 업데이트 시켜준다.

일종의 데이터 유통기한이라고 볼 수 있다.

데이터가 상했는지는 isStale 속성을 통해 알 수 있고, 데이터가 언제 상한 상태가 되는지는 staleTime 속성을 통해 설정 가능하다.