gpt4 book ai didi

Firebase通过使用orderByKey()和equalTo()检索数据

转载 作者:行者123 更新时间:2023-12-04 13:11:09 27 4
gpt4 key购买 nike

因此,我试图在此结构中找到数据“aaaaabbbbbbaaaa”:

disney
studentList
-Jh46tlaNFx_YmgA8iMJ: "aaaaabbbbbbaaaa"
-Jh474kAvoekE4hC7W3b:"54ce1cbec4335cd3186105dc"

我用这个
var ref = new Firebase("https://disney.firebaseio.com/");
ref.child("studentList").orderByKey().equalTo("54ca2c11d1afc1612871624a").on("child_added", function(snapshot) {
console.log(snapshot.val());
});

但是我什么也没回来。哪里错了?
我应该使用什么?

最佳答案

在您提供的数据样本中,studenList下没有54ca2c11d1afc1612871624a的节点。

您的 key 是-Jh46tlaNFx_YmgA8iMJ-Jh474kAvoekE4hC7W3b。您可以通过以下方式轻松确定自己的位置:

ref.child("studentList").orderByKey().on("child_added", function(snapshot) {
console.log(snapshot.key()); // on newer SDKs, this may be snapshot.key
});

您似乎想按节点的值对节点进行排序,但这不是当前Firebase上可用的操作。 Firebase只能 query children by a value of a named propertykey或其 priority。因此,如果您将数据结构更改为:
disney
studentList
-Jh46tlaNFx_YmgA8iMJ:
name: "aaaaabbbbbbaaaa"
-Jh474kAvoekE4hC7W3b:
name: "54ce1cbec4335cd3186105dc"

您可以通过以下方式按名称获得 children 的订单:
ref.child("studentList")
.orderByChild("name")
.equalTo("54ca2c11d1afc1612871624a")
.on("child_added", function(snapshot) {
console.log(snapshot.val());
});

只是一个旁节点:如果您的实际节点值类似于您提供的示例中的值,则可能需要考虑使用这些值作为键;对于我未经训练的眼睛来说,它们似乎已经很独特了。

关于Firebase通过使用orderByKey()和equalTo()检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28262803/

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