- 단어 그대로 UI를 얘기한다.
- 예를 들어 좋아요 버튼을 눌렀을 때 성공했다고 간주하고 바로 갯수를 +1 해준다. 다시 그 버튼을 눌렀을 땐 원래 상태로 돌아온다.
- 원래는 refetchQueries를 통해 화면을 그려줬지만 이제는 optimisticResponse를 이용한다. 이런 방법을 사용할 수 있다.
update(cache, {data}) {
cache.writeQuery({
................})
- 클라이언트는 이를 알아차려 저장된 데이터를 가지고 연관된 컴포넌트를 다시 랜더링 한다.
- 서버의 응답으로 진짜 데이터를 받으면, 아폴로 클라이언트는 기존의 optimistic버전을 지우고 서버에서 받은 데이터를 저장한다.
- 아폴로 클라이언트는 다시 이를 알아차리고 연관된 컴포넌트를 다시 랜더링 한다.