获取 DataSnapShot 的父级

Posted

技术标签:

【中文标题】获取 DataSnapShot 的父级【英文标题】:Get parent of DataSnapShot 【发布时间】:2021-12-20 06:38:13 【问题描述】:

我有一个代码可以让孩子的节点像这样出来

YAlthobiti: firstName: yara, lastName: A, password: 12345, gender: true, DoB: 1/1/2000, email: yara@gmail.com

所以我需要让父级 (YAlthobiti) 对其执行功能我该怎么做?

这是我的代码

static Future<String> getUserEmotivID(String email) async
    String EmotivID = "";

    await _ref.child('Users')
    .orderByChild("email")
    .equalTo(email)
    .once()
    .then((DataSnapshot dataSnapshot) 
      EmotivID =  dataSnapshot.value.toString();
      print(EmotivID);
      return EmotivID;
    ).catchError((error, stackTrace) 
      print("inner: $error");
      print("Dose not Exist");
    );
    return "";
  

我找了很多,一无所获

【问题讨论】:

【参考方案1】:

当您对 Firebase 数据库执行查询时,可能会有多个结果。所以快照包含这些结果的列表。即使只有一个结果,快照也会包含一个结果列表。

您的代码需要通过循环 dataSnapshot.value.values 来处理此列表

【讨论】:

【参考方案2】:

我猜你需要那个节点的密钥。 您可以在 DataSnapshot 上使用属性 key,如文档中的 here 所述。

所以你的代码应该是这样的:

.then((DataSnapshot dataSnapshot) 
  EmotivID =  dataSnapshot.key;
  print(EmotivID);
  return EmotivID;
)

【讨论】:

我试过但它返回它的父女巫是(用户)

以上是关于获取 DataSnapShot 的父级的主要内容,如果未能解决你的问题,请参考以下文章

jquery如何获得父级的父级元素?

Apollo Server Stitching - 在解析器中获取父级的父级

sh 获取当前分支的父级

在Python Tkinter中获取父窗口小部件的父级

试图在每个语句中获取 this 的父级

如何在 Windows 上的 c++ 中获取设备的父级?