【发布时间】:2021-07-27 18:08:44
【问题描述】:
我收到代码“snapshot.Data()”的错误。这是对 Firestore 的重大更改之一,快照现在属于“DocumentSnapshot
中断:通过数据获取器获取快照的数据现在通过 data() 方法完成。
新文档中提供的示例对我没有帮助。
“参数类型'对象?'不能赋值给参数类型'Map
'"
我尝试了许多组合,但我无法摆脱错误。另外,我没有使用流,我只想读取单个记录。
代码如下:
var snapshot = await _reference.doc(_user.uid).get();
return UserData.fromMap(snapshot.data());
这里是模型“fromMap”:
factory UserData.fromMap(Map<String, dynamic> map) {
return UserData(
birthday: DateTime.fromMillisecondsSinceEpoch(map['birthday']),
gender: map['gender'],
isDarkMode: map['isDarkMode'],
isMetric: map['isMetric'],
name: map['name'],
password: map['password'],
);
}
【问题讨论】:
-
你在哪里得到这个错误?如,哪段代码抛出错误?这只是一些缺少类型错误和可为空的问题。可以通过显式类型转换让编译器知道它是 Map
来修复类型。
标签: firebase flutter dart google-cloud-firestore