인프런 커뮤니티 질문&답변

Flutter synapps님의 프로필 이미지
Flutter synapps

작성한 질문수

[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!

RestaurantDetail 캐싱하기

섹션 10, restaurantDetail 캐싱하기 질문입니다.

작성

·

76

0

안녕하세요. 제가 해당 섹션을 이해한바로는 getDetail 함수에서 메인스크린에서 식당을 클릭할때 들어오는 것 뿐만아니라, 식당 디테일 페이지 단독으로 실행할 때도 잘 작동하게끔 구현한걸로 아는데,

데이터(CursorPagination)가 아얘 없을 때 this.paginate()를 한번 실행해서 처음 20개의 식당 데이터를 가져오고 이후 id 에 해당하는 getRestaurantDetail을 호출해서 해당 식당 정보를 가져온후 마지막에 map 으로 그 식당 id 에 해당하는 데이터를 교체하는 형식으로 진행한는데,

애초에 this.paginate() 에서 가져온 20개의 식당 범위 밖에 식당이라면, getRestaurantDetail 로 식당정보를 가져오더라도 똑같은 식당 id를 찾을 수 없어서 교체할 수 없는 것 아닌지 질문드립니다.

답변 1

0

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

안녕하세요!

식당 상세를 먼저 가져올경우 어차피 캐싱돼있는 데이터가 없기 때문에 무용지물이라는 말씀 맞으실가요?

너무 당연한 이야기입니다.

기존 있는 데이터를 함께 활용 할 수 있는 방향에 대해 설명드린 섹션입니다.

이게 중요한 이유는 이미 존재하는 데이터를 기반으로 화면간 이동하며 공통 데이터를 활용한 애니메이션이 가능하기 때문입니다. 그럼 로딩 착시를 줄 수 있어서 긍정적인 UX 효과를 얻을 수 있습니다.

만약에 그런게 필요 없다면, 또는 사용될 일이 없는 상황이라면 말씀 하신대로 구현 할 필요 없습니다.

감사합니다!

Flutter synapps님의 프로필 이미지
Flutter synapps

작성한 질문수

질문하기