我编写了写入数据库(实时数据库)的函数。 我的问题是,由于某种原因,每当我写入一个痉挛性节点时,它都会添加整个数据,然后只删除其中一个。
这是节点。由于某种原因,数据会不断被删除,并且在ID下仅保留一个数据。
这就是密码
function sendVideosToUserFeed(videosList,userUID){
let promises = []
videosList.forEach(video =>{
console.log("Video function",video);
promises.push(admin.database().ref("userFeed").child(userUID).set(video));
})
return Promise.all(promises).then(snapshot =>{
console.log("Sent succssesful ","worked");
return true
}).catch(error =>{
console.log("Error ",error);
})
}
在这段代码中,我在一个包含数据并将其设置为痉挛节点的循环上运行。 我希望将每个数据保存在用户UID下。 所以我要设置对每个数据的引用,然后使用Promis.all运行所有数据。 但是就像我说的那样,它会不断添加所有内容,然后将它们全部删除。 知道我在做什么错吗?
解决方案
function sendVideosToUserFeed(videosList,userUID){
let promises = []
videosList.forEach(video =>{
promises.push(admin.database().ref("userFeed").child(userUID).child(video.videoID).set(video));
})
return Promise.all(promises).then(snapshot =>{
console.log("Sent succssesful ","worked");
return true
}).catch(error =>{
console.log("Error ",error);
})
}
我这样保存数据:头节点->用户UID->视频ID->数据
答案 0 :(得分:0)
解决方案
function sendVideosToUserFeed(videosList,userUID){
let promises = []
videosList.forEach(video =>{
promises.push(admin.database().ref("userFeed").child(userUID).child(video.videoID).set(video));
})
return Promise.all(promises).then(snapshot =>{
console.log("Sent succssesful ","worked");
return true
}).catch(error =>{
console.log("Error ",error);
})
}