- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
안녕하세요. 강의 너무 잘 봤습니다.
최신 flutter버전으로 업그레이드(null safety적용) 하는 과정에서 feed_widget.dart파일에서 막혀서 문의드립니다.
52라인 부근에서
widget.document['likedUsers']?.contains(widget.user.email) ?? false ? GestureDetector( onTap: _unlike, child: Icon( Icons.favorite, color: Colors.red, )) : GestureDetector( onTap: _like, child: Icon(Icons.favorite_border)),
widget.document['likedUsers']? <-----이부분에서 오류가 발생 되는것 같은데 해당 document의 likedUsers필드 자체가 존재하지 않아 오류가 발생됩니다. (오류 메시지 : Bad state: field does not exist within the DocumentSnapshotPlatform)
최신플러터로 업데이트 이후 발생되네요.. null이라서 그런거같은데 ... 스택오버플로를 다 뒤져봐도 원하는 해답을 찾을수가 없더군요..
널을 피해갈 방법이 없을까요?
네. 최신 버전에서는 데이터를 읽어오는 코드가 변경된 것 때문에 그런 것 같습니다.
https://firebase.flutter.dev/docs/firestore/usage#one-time-read