Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- grpahQL
- 연습
- 일상
- 포스기
- 코딩
- 엔퀸즈
- 리액트
- this
- react
- underbar
- ftech
- 알고리즘
- 개발
- 자바스크립트
- DOM
- 공부
- method
- 제일어려워
- underscores
- Instantiation Patterns
- vscode
- 초보
- nqueens
- 해커톤
- JavaScript
- 클라이언트
- array
- 취업
- JS
- 코드스테이츠
Archives
- Today
- Total
analogcoding
Apollo Cache 본문
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 링크
'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