【发布时间】:2022-02-01 22:51:43
【问题描述】:
将 Firebase 实时数据库更新到 9.0.X 后,我无法将 snapshot.value 转换为 Map
final FirebaseDatabase database = FirebaseDatabase.instance;
database.setPersistenceEnabled(true);
itemRef = database.reference().child('_child1').child(_remoteConfigService.getStringLang);
itemRef.once().then((event) {
final _data1 = Map<String, dynamic>.from(event.snapshot.value as dynamic).forEach((key, value) =>
_notes.add(Item.fromRTDB(value)));
});
我的模型课:
class Item {
String key;
String code;
String spn;
Item({
required this.key,
required this.code,
required this.spn});
factory Item.fromRTDB(Map<String, dynamic> data) {
return Item(
key: data['key'] ?? '01',
code: data['code'] ?? 'A drink',
spn: data['spn'] ?? 'Beer');
}
toJson() {
return {
"key": key,
"code": code,
"spn": spn,
};
}
}
在所有选项中我得到错误:
List<Object?>' is not a subtype of type 'Map<dynamic, dynamic>'
【问题讨论】:
标签: flutter dart firebase-realtime-database