【发布时间】:2020-08-23 07:48:28
【问题描述】:
我正在尝试通过 Streamer 从 Firebase 读取用户数据并将它们分配到我的 User 类的属性中。我有一个 FirabaseActions 类做 firebase 的东西。这是我使用流媒体获取数据的方法。它工作得很好,并且 print(user.data['userName']);给我正确的结果。
static Future<User> userDataStream(loggedInUserEmail) async {
final databaseReference = Firestore.instance;
User currentUser;
await for (var snapshot in databaseReference
.collection('users')
.where('email', isEqualTo: loggedInUserEmail)
.snapshots()) {
for (var user in snapshot.documents) {
print(user.data['userName']);
currentUser.userName = user.data['userName'];
currentUser.email = user.data['email'];
currentUser.userID = user.data['userID'];
currentUser.level = user.data['level'];
}
}
return currentUser;
}
当我尝试将这些用户信息分配给我的类属性时,问题就开始了。这是我的用户类。我收到如下错误。它是关于未来类型的,但我无法处理。我该怎么办?
“未来”类没有实例获取器“电子邮件”。 接收者:“未来”的实例 尝试呼叫:电子邮件
class User {
String userName;
String userID;
String email;
int level;
User({this.userName, this.userID, this.level, this.email});
}
【问题讨论】:
标签: firebase flutter dart future