본문 바로가기

𝗣𝗥𝗢𝗝𝗘𝗖𝗧/[Flutter] Diary App

Firebase Data 업데이트

오늘의 개발 목표

    프로필 수정 시 수정된 데이터를 Firestore에 업데이트 기능 추가

    수정된 프로필 데이터가 즉시 적용되도록 Firestore 실시간 업데이트를 구독하는 기능 구현

 

문제 및 고민한 점

- 정보 수정 후에도 바로 데이터가 적용되지 않았고, 새로 고침 후에야 적용되었다. 

- Firestore 실시간 업데이트를 구독하는 과정에서 데이터 변화에 대한 처리에 시간이 오래 걸렸다.

 

해결 방법
void getDataForCurrentUser() async {
    // 현재 사용자의 정보 가져오기
    User? user = _auth.currentUser;

    if (user != null) {
      String useremail = user.email!;

      FirebaseFirestore.instance
          .collection('users')
          .doc(useremail)
          .snapshots()
          .listen((DocumentSnapshot snapshot) {
        if (snapshot.exists) {
          // 문서에서 데이터 가져오기
          Map<String, dynamic> userData =
              snapshot.data() as Map<String, dynamic>;

          // 가져온 데이터 사용하기
          userEmail = userData['email'];
          userName = userData['username'];

          // setState 호출하여 위젯에 데이터 변경을 알림
          setState(() {});
        }
      });
    }
  }

 

앞으로의 계획

- 일기 상세페이지 디자인 

- ImagePicker 관련해서 오류를 해결, 또는 다른 플러그인 찾아보기

 

 

 

출처: Pinterest

 

Recent Posts
Visits
Today
Yesterday
Archives
Calendar
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31