Javascript Firebase orderByValue().equalTo()不是函数(节点JS)
我的数据库具有以下结构:Javascript Firebase orderByValue().equalTo()不是函数(节点JS),javascript,node.js,firebase,firebase-realtime-database,Javascript,Node.js,Firebase,Firebase Realtime Database,我的数据库具有以下结构: "groupA" : { "applications" : { "applicationID_132" : { "status" : "accepted" }, "applicationID_423" : { "status" : "declined" }, "applicationID_562" : { "status" : "accepted" } } } 我试图通过以下方
"groupA" : {
"applications" : {
"applicationID_132" : {
"status" : "accepted"
},
"applicationID_423" : {
"status" : "declined"
},
"applicationID_562" : {
"status" : "accepted"
}
}
}
我试图通过以下方式检索状态为“已接受”的应用程序快照(以便能够跳过获取所有应用程序):
似乎不起作用,还尝试了orderBy和orderByValue。可能遗漏了什么,或者处理此案件的更好方法是什么?
谢谢你的帮助 尝试使用
child.orderByChild().value()
就你而言:
return admin.database().ref('groupA').child('applications').orderByChild('status').equalTo('accepted')
.once('value')
.then(acceptedApplicationsSnapshot => {
您也可以使用
orderByValue()
,,但首先需要获取要排序的引用-函数不接受参数
如何使用orderByValue()?
.child(..)
在您的案例中返回一个引用,即应用程序
,如果您想使用orderByValue
,则需要先获取对“status”的引用,例如:
admin.database()。
.equalTo('accepted')…
您不能将参数传递给orderByValue
检查下面的答案。谢谢!我的问题中有一个输入错误,“也尝试了orderByChild*”,相同的结果如果抛出错误,您可以共享堆栈跟踪吗?我刚刚尝试了这个(orderByChild
)并且它可以工作。使用orderByValue(“…”)
将引发错误:错误:Query.orderByValue失败:使用1个参数调用。不需要。
return admin.database().ref('groupA').child('applications').orderByChild('status').equalTo('accepted')
.once('value')
.then(acceptedApplicationsSnapshot => {