analogcoding

Apollo Cache 본문

Be well coding/Learn more

Apollo Cache

be well 2019. 8. 8. 23:04

what is Apollo Cache 

아폴로는 Query 요청을 할 때 먼저 Cache 를 확인한다. 처음 Query 요청 시 Cache 에 Query , variables 데이터를 자동적으로 
Cache에 저장한다. 처음 페이지가 렌더 될 때 로딩이 걸리지만 다음 번 그 페이지를 방문할 때 바로 렌더 되는 이유는 첫 요청에서는
요청을 실행하지만 그 다음부터는 Cache 를 참조한다.

problem

그렇지만 단점으로는 데이터가 업데이트되는 Mutation 요청이 진행되었을 때,

페이지에서 새로고침을 하지않는 한 렌더된 데이터가 변하지 않는다. Query 요청을 다시 보내서 새로 DB에서 업데이트 된 데이터를
가져와야하는데 Cache 에 같은 Query 의 이름이 있어서, 기존에 Cache에 있던 데이터만 가져오게 된다.

 

solution

 

1.  Cache update  

  Cache에 있는 데이터에 직접적으로 Mutation 이 끝난 후 재요청.
  ++ refetchQueries 라는 것이 존재한다 -> Mutation이 끝난 후 다시 쿼리를 불러오는 역할.

 

2. 강제 새로고침

  일단 이 방법으로 프로젝트 진행 중. 쿨하지 못한 방법 ㅠㅠ

 

아직 적용시키지 못한 부분이라 후에 더 공부한 뒤 사용해볼 예정!

 

DOCS 링크

https://www.apollographql.com/docs/angular/basics/caching/

'Be well coding > Learn more' 카테고리의 다른 글

ESlint 란 ? , ESlint 설치  (0) 2019.09.18
jest 란 ? , jest 설치 , testing code 읽어보기  (2) 2019.09.18
Kakao MAP 사용하기  (0) 2019.08.08
PASSPORT 카카오 (KaKao)2  (0) 2019.08.01
PASSPORT 카카오 (KaKao)  (0) 2019.07.30
Comments