react-query와 apollo/client는 fetchPolicy가 내장되어있음
미니 리덕스 = recoil
redux가 망하면 안되는데! 해서 나온것이 redux-toolkit
cache-and-network = cache에서 한번 가져오고 그 다음 cache에 있든 없든 api는 한번 요청해. 그리고 2개를 비교해봐
cache-first = 기존꺼 있으면 가져오고 없으면 새걸로 받을래 = 디폴드 기본값
cache-only = cache에서만 가져와, 없으면 가져오지마
network-only = 새걸로 받고싶어, 매번 api요청해
no-cache = 아예 cache하지마
cache-first으로 했을 때, 아무것도 뜨지 않는다
network-only로 하면?
처음에 한번 가져오고 저장을 했지만, 새로고침 하면 또 가져온다
규칙
cache-first가 작동이 안될 때가 있다
contents가 없다가 있으면 cache-first를 가져온다
다시 같으면?
추가 요청 없이 데이터를 가져온다
페이지를 이동할 때 FETCH_BOARDS를 가져오면 안된다 = 이미 가져왔기 때문에
들어가면 한번 가져오고, 페이지를 이동하면
api요청이 다시 되었다. 이미 전 페이지에서 받아왔는데?
= 페이지 전환을 하면 _app부분이 다시 리렌더 된다
이 뜻은 ApolloSetting에서도 다시 리렌더가 된다는 것
다시 페이지로 보면
한번 받아오고 페이지 이동을 하면
받아오지 않는다
_id 또는 id가 있어야 잘 저장이 된다
Recoil
yarn add recoil
RecoilRoot = 네모친 전체에 RecoilState를 사용하겠다~
Recoil로 주고 받고 하려면?
store = 저장
store에 저장하여 쓴다
recoil에서 제공하는 atom이 있다
useEffect를 사용한다
'c.c' 카테고리의 다른 글
65. 암호화와 JWT 토큰 (1) | 2023.02.23 |
---|---|
64. 로그인 프로세스 (0) | 2023.02.23 |
60. 검색 - 디바운싱과 쓰로틀링의 이해와 적용 (0) | 2023.02.21 |
59. 검색 프로세스 이해 및 구현 실습 (0) | 2023.02.21 |
57. 이미지 검증 실습 및 게시글에 등록하기 실습 (0) | 2023.02.21 |
댓글