我希望得到嵌套的子对象,就像在图像中一样,但它返回null。我想要价格和数量的价值并在表格中显示。
检查此数据库图像 here.
代码
var countRef = firebase.database().ref('Orders/' + listid);
countRef.on('value', snapshot => {
var b = snapshot.child("price").val();
var c = snapshot.child("quantity").val();
console.log(c);
});
答案 0 :(得分:1)
您指的是错误的路径,这就是您获得null的原因。以下是Firebase文档所说的内容:
如果没有数据,则返回的快照为空。
我无法从图像中看到您的整个数据库结构,但尝试仔细检查路径,这是我最好的猜测:
var foodItems = firebase.database().ref(`Orders/'${listid}/foodItems`)
foodItems.on('value', snapshot => {
// the snapshot should return the foodItems array
snapshot.forEach((obj) => {
console.log(obj.price)
console.log(obj.quantity)
})
})
答案 1 :(得分:0)
如果您的listid
是并存在密钥,那么您错误输入了路径:fooditems
,请尝试此操作;
var countRef = firebase.database().ref('Orders/' + listid);
countRef.on('value', snapshot => {
if (snapshot.exists()) {
var b = snapshot.child("fooditems/price").val();
var c = snapshot.child("fooditems/quantity").val();
console.log(c);
}
});