首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从flutter中的数据快照中获取特定值?

如何从flutter中的数据快照中获取特定值?
EN

Stack Overflow用户
提问于 2018-05-28 01:31:35
回答 3查看 17K关注 0票数 6

我有这个数据快照

代码语言:javascript
复制
"{post1: {pic: https://i.redd.it/ni6zhxh874011.jpg, title: title, desc: desc}, post2: {pic: https://i.redd.it/krj9miojg5011.jpg, title: awsdas, desc: desc2}}"

我想从每个帖子中检索“图片”值。snapshot.value"pic“不起作用,它返回null。

提前感谢

这就是我为我未来的构建器接收数据快照的方式

代码语言:javascript
复制
Future<Object> _obj () async {
    Object _objdatabase;
    await FirebaseDatabase.instance.reference().child("Communities").once().then((DataSnapshot snapshot) {
        print(_objdatabase.toString());

        _objdatabase = snapshot.value; 
    });
    return _objdatabase;
}    
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-06-08 00:33:12

下面是我所做的

代码语言:javascript
复制
Map<dynamic, dynamic> map = snapshot.data.snapshot.value;

map.values.toList()[index]["pic"]
票数 7
EN

Stack Overflow用户

发布于 2018-05-28 07:18:22

您想要的是在snapshot.value中遍历values并将它们添加到列表中。

伪代码:

代码语言:javascript
复制
for (var value in snapshot.value.values){
myList.add(value);
}

然后,您将能够根据您的用例执行类似的操作:

代码语言:javascript
复制
myList.forEach((v)=>print(v["pic"].toString)); //just an example
票数 2
EN

Stack Overflow用户

发布于 2018-08-01 02:29:51

此代码检索node的键:

代码语言:javascript
复制
DataSnapshot usuario = await messagesRef.limitToLast(10).orderByChild("email").equalTo(mail_emparejar).once()
.then((DataSnapshot snapshot) {
print(snapshot.value);
user_uid=snapshot.value.entries.elementAt(0).key;
........

result=6TLD6RFIa0T0a3CuRW9FpB4HlXf2

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50554737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档