来自Json的Flutter Firestore返回Null?
Posted
技术标签:
【中文标题】来自Json的Flutter Firestore返回Null?【英文标题】:Flutter Firestore fromJson Return Null? 【发布时间】:2022-01-22 10:37:36 【问题描述】:我一直在尝试这个,但它一直返回 null 我哪里做错了?
class UserData
final String? name;
UserData(
this.name);
Map<String, dynamic> toJson()
return
'name': name,
;
UserData.fromJson(Map<String, dynamic> doc)
: this(name: doc['name']! as String);
factory UserData.fromDocument(DocumentSnapshot doc)
return UserData.fromJson(doc.data() as Map<String, dynamic>);
我也在尝试这样
factory UserData.fromDocument(DocumentSnapshot doc)
Map<String, dynamic> data = doc.data() as Map<String, dynamic>;
print(data['name']); // data is retuning correct
UserData user = UserData.fromJson(doc.data() as Map<String, dynamic>);
print(user.name); // data is returning null
return UserData.fromJson(doc.data() as Map<String, dynamic>);
【问题讨论】:
你检查doc.data()
是否从数据库返回数据?
我检查了,数据正在返回
@PeterHaddad 我解决了我如何尝试的问题
【参考方案1】:
改变这个:
UserData.fromJson(Map<String, dynamic> doc)
: this(name: doc['name']! as String);
to,因为this()
会返回一个全新的类实例:
UserData.fromJson(Map<String, dynamic> doc)
: name = doc['name']! as String;
【讨论】:
仍然返回 null以上是关于来自Json的Flutter Firestore返回Null?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Flutter 中加入来自两个 Firestore 集合的数据?
Flutter:使用来自 Firestore 的多集合流创建动态更新的 DataTable
在 Flutter 中的垂直 ScrollView 内的水平 ListView 中显示来自 Firestore 的数据
使用来自firestore数据库的geoflutterfire查询结果,使用flutter应用程序返回null或啥都没有,但语法没有错误
有没有办法通过flutter查看来自云Firestore的用户的关注者或关注者?
Flutter:显示来自经过身份验证的 Firebase Auth 用户的带有 StreamBuilder 的一些 Firestore 集合