【发布时间】:2022-12-01 05:07:57
【问题描述】:
我在我的实时数据库中存储基于日期的数据。日期范围从今天到一周前。在某些时候,我想遍历我的实时数据库并检查数据库中现在是否有任何日期已经过去,如果是,则删除它们及其子项。
我有一个最新日期数组,我可以通过遍历数据库中的所有日期并检查它是否存在于我的数组中来用作参考。我当前的解决方案如下所示,但给了我这个错误:TypeError: rootRef.once is not a function。
function removeOldData() {
let rootRef = ref(db, "/");
rootRef.once("value")
.then(function(snapshot) {
snapshot.forEach(date => {
let ref = ref(db, `${date}/`);
if(!datesArr.includes(date)) {
remove(ref)
return;
}
})
});
}
我是 firebase 的新手,我对 once() 的使用有点困惑。欢迎所有关于更好/更有效的方法的建议。谢谢!
【问题讨论】:
标签: javascript firebase firebase-realtime-database