Don't think! Just do it!

종합 IT 기술 정체성 카오스 블로그! 이... 이곳은 어디지?

infinite_scroll_pagination 3

[Flutter] Firestore pagination(무한스크롤)

무한 스크롤 같은 거 구현할 때 스크롤이 끝부분에 다달았을 때 DB나 API 서버를 통해서 새로운 데이터를 가져와야 하잖아? 이런 걸 Pagination이라고 해. 보통 리스트 형태의 데이터를 뿌려주는 API 들은 page 옵션이 별도로 있어. 그래서 pagination 구현할 때 그 page 옵션을 사용하면 되지. page 옵션이 없더라도 특정 데이터의 날짜를 기준삼아 정렬하고 읽어온 데이터 갯수를 pagination에 활용할 수도 있어. 뭐 API 서버는 이렇다 치고, Firestore에서도 여러가지 pagination을 위한 기능을 제공하고 있어.👇👇 https://firebase.google.com/docs/firestore/query-data/query-cursors 쿼리 커서로 데이터 페이지 ..

[소셜차트] 앱 제작기 #12. 댓글 기능 & 기타 잡다!

사실 이제 소셜차트의 핵심적인 부분을 구현해야 하는데.. 그건 아직 생각이 정리가 안되서 ㅋㅋㅋ 눈에 보이는 것들부터 우선 처리하고 있어. 유저가 포스팅을 하는 건 했으니 이제 댓글을 달아 보자고.. 포스팅이랑은 다르게 댓글은 그냥 keyboard에 붙어 다니는 bottomsheet에 textfield를 붙여서 구현했어. 물론 수정해야할 것들이나 추가해야 할 것들이 매우 많지만 일단 기능 구현에만 중점을 두고 작업했고 댓글 리스트를 위한 위젯은 유저 포스팅 리스트에 사용했던 infinite_scroll_pagination을 또 사용했어. infinite_scroll_pagination 매우 좋아! 이거 하면서 골때렸던게 keyboard를 따라다니는 bottomsheet 였는데 일반적으로는 매우 완벽하게 ..

[소셜차트] 앱 제작기 #9. 무한 스크롤

유저가 작성한 인사이트 카드를 여러사람에게 맞춰 보여주는 건 쉽지 않은 일이겠지? ㅋㅋ 아마 Query가 마이 복잡해 질거야. 앱에서 firestore에 다이렉트로 못 할 수도 있고.. 이럴 경우에는 Backend에서 해야겠지. 그렇다고 손놓고 있으면 등신이고. 걍 일단 시간순으로 정렬해서 listview로 보여주자고.. Insight card는 단순하게 header, body, bottom 이렇게 3부분으로 나뉘는데 header에는 chart의 요약 정보가 들어갈거고 body에는 유저, 카드 내용이, 그리고 bottom에는 스크랩, 댓글 달기, 외부 공유를 할 수 있는 버튼이 있어. header와 bottom은 구현해야할 게 엄청 많으니까 일단 body만 읽어와서 뿌려줄건데 처음에는 귀엽게 10개를 고..

반응형