본문 바로가기
Flutter

flutter instagram follow 코드 수정기

by YoonTaeseong 2019. 11. 20.

팔로우 수정을 할 땐 한번 해본적이 있어 그대로 하면 되는줄 알았다. 즉 Stream형태로 계속해서 listen을 해주면 알아서 stream 이 관찰을 해 변경점이 발견되면 follow -> UNFOLLOW, unfollow -> follow 이런 식으로 변경이 가능 할 줄 알았다. 그래서 코드도 이와 같이 구현 했었다.

코드에서 보이는것과 같이 document의 getUserUid의 데이터를 snapshot으로 전부 다 가지고 왔다. 그러다 보니 알 수 없는 에러가 많이 뜨고 updateData를 했었는데 다른 유저가 팔로우를 하게 되면 겹치는 현상이 일어나게 되는것이었다.

 

여러가지 코드를 참고하고 하다보니 provider를 참고해서 만들게 된 코드가 다음과 같이 되었다.

코드를 보게되면 파이어베이스 콜렉션안의 도큐먼트 안 followings 라는 콜렉션을 하나 더 만들고 또 그 안에 팔로우한 유저 아이디 기반 도큐먼트를 하나 더 생성 시키고 DocumentSnapshot 형의 get()을 해주었다.

 

그리고 bool을 리턴하는 Future형으로 함수를 만들어주었다. 팔로우 버튼을 클릭하면 document가 추가되는 형식으로 구현하였다.

 

참고했던 영상은 url로 본문 바로 밑에 남겨놓았다.

https://www.youtube.com/watch?v=ugXjgWARxfU&t=655s

 

'Flutter' 카테고리의 다른 글

Flutter Bloc 패턴  (0) 2020.12.20
Flutter 첫 밋업 후기  (0) 2019.11.16
Flutter StreamBuilder란??  (0) 2019.10.29
CustomPagePushed  (0) 2019.10.19
GridView정의 두가지 방법  (0) 2019.10.18

댓글