我正在尝试从firebase节点获取一个密钥,但我无法从我现在的代码中获取任何密钥。这是我的代码:
let app = Firebase.initializeApp(config)
let db = app.database()
let bdRef = db.ref()
export default {
name: 'hello',
firebase: {
businesses: bdRef.orderByChild('.key').equalTo('306')
}
}
执行此操作时出现此错误:
validation.js?5c80:234未捕获错误:Query.orderByChild失败:第一个参数是无效路径=“。key”。路径必须是非空字符串,不能包含“。”,“#”,“$”,“[”或“]”``
当我使用我的代码执行此操作时:
businesses: bdRef.orderByChild('title').equalTo('Feather Animation Wood Carving Supplies')
它附带了这个数组:
0:Object
.key:"3021"
address:"Hello Avenue"
city:""
description:"Wood carving tools and supplies. Please contact us by phone or internet."
email:"hi@gmail.com"
employees:"1"
如何获取.key
属性?
答案 0 :(得分:1)
您是否尝试过使用此命令:
businesses['.key']
答案 1 :(得分:0)
非常简单的答案是你有json的“.key”键和“3021”作为它的值。但是在“.key”中你包含了“。”这指的是你提供空路径或可能是无效路径。
因此,如果您将其命名为“key”或任何名称为“keyid”会很酷,除非您将错误包括在内can't contain ".", "#", "$", "[", or "]"
希望这个解释有所帮助!
答案 2 :(得分:0)
如上所述,您无法查询名称中带有点的属性。从documentation开始,您需要使用内置的orderByKey()
过滤器:
export default {
name: 'hello',
firebase: {
businesses: bdRef.equalTo('306').orderByKey()
}
}