从 Realtime Firebase 读取值
Reading a value from Realtime Firebase
我有以下 json 结构:
在“所有”节点中,我有一个属性“drinkId”,我试图将它移到该子节点之外,使其上一级。
我正在尝试读取值,但运气不佳
const cocktailRef= firebase
.database()
.ref("Ratings");
cocktailRef.once("value", (snapshot) => {
snapshot.forEach((child) => {
const drinkIdPass = child.ref.child("all").child("drinkId").value();
child.ref.update({ drinkId: drinkIdPass });
})
})
我尝试了“.value()”的不同变体,同样的问题
DataSnapshot 上没有任何 value()
方法。 val()
尝试像这样重构您的代码:
const cocktailRef= firebase.database().ref("Ratings");
cocktailRef.once("value").then(async (snapshot) => {
const updates = { }
snapshot.forEach((child) => {
const drinkIdPass = child.val().all.drinkId
updates[`${child.key}/drinkId`] = drinkIdPass
})
await cocktailRef.update(updates)
console.log("Data updated")
})
我有以下 json 结构:
在“所有”节点中,我有一个属性“drinkId”,我试图将它移到该子节点之外,使其上一级。
我正在尝试读取值,但运气不佳
const cocktailRef= firebase
.database()
.ref("Ratings");
cocktailRef.once("value", (snapshot) => {
snapshot.forEach((child) => {
const drinkIdPass = child.ref.child("all").child("drinkId").value();
child.ref.update({ drinkId: drinkIdPass });
})
})
我尝试了“.value()”的不同变体,同样的问题
DataSnapshot 上没有任何 value()
方法。 val()
尝试像这样重构您的代码:
const cocktailRef= firebase.database().ref("Ratings");
cocktailRef.once("value").then(async (snapshot) => {
const updates = { }
snapshot.forEach((child) => {
const drinkIdPass = child.val().all.drinkId
updates[`${child.key}/drinkId`] = drinkIdPass
})
await cocktailRef.update(updates)
console.log("Data updated")
})