gpt4 book ai didi

flutter - _InternalLinkedHashMap Dart中的 firestore错误

转载 作者:行者123 更新时间:2023-12-03 03:20:35 25 4
gpt4 key购买 nike

我已将Cloud Firestore设置为数据库,并正在使用 map 检索文档,这是快照:
enter image description here
当我尝试使用get()检索文档时,我得到了DocumentSnapshot,然后将其转换为Map<String, dynamic>,其中包括许多嵌套 map ,如上图所示。因此,我使用.forEach遍历了它们,然后我成功接收了值(使用断点检查)。
现在,因为我想在用户界面中显示它们,所以我将所有嵌套映射存储在List()中,但是当我尝试添加它们时,出现此错误:
日志:type '_InternalLinkedHashMap<dynamic, dynamic>' is not a subtype of type 'Map<String, dynamic>' in type cast 代码:

List<Map<String, dynamic>> dummyListMap = new List();

await docRef.get().then((value) {
value.data.forEach((key, mapValue) {
dummyListMap.add(mapValue as Map<String, dynamic>);
});
});
关于StackOverflow,有几个问题带有相同的错误,但它们与JSON数据结构有关,我无法解码它们以用于我的情况。
谢谢!

最佳答案

您必须将_InternalLinkedHashMap<dynamic, dynamic>转换为Map<String, dynamic>。通过使用forEach,您可以拆分DocumentSnapshot的键和值。到目前为止,一切都很好。现在,该值具有_InternalLinkedHashMap<dynamic, dynamic>的类型。您将不得不将其转换为Map<String, dynamic>
用以下代码替换代码:

dummyListMap.add(Map<String,dynamic>.from(mapValue));

关于flutter - _InternalLinkedHashMap Dart中的<dynamic,dynamic> firestore错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63465523/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com