gpt4 book ai didi

javascript - Firebase 功能问题

转载 作者:行者123 更新时间:2023-12-03 00:22:00 26 4
gpt4 key购买 nike

我正在尝试使用此功能删除实时数据库中的旧条目。我无法删除旧记录,有什么想法吗?该功能似乎运行良好。代码如下..

const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();

const CUT_OFF_TIME = 2 * 60 * 60 * 1000; // 2 Hours in milliseconds.

exports.deleteOldItems = functions.database.ref('/posts/{pushId}')
.onWrite((change, context) => {
var ref = change.after.ref.parent; // reference to the items
var now = Date.now();
var cutoff = now - 600;
var oldItemsQuery = ref.orderByChild('timestamp').endAt(cutoff);
return oldItemsQuery.once('value', function(snapshot) {
var updates = {};
snapshot.forEach(function(child) {
updates[child.key] = null
});

return ref.update(updates);
});
});

数据库的结构如下...

-'db-name'
- posts
- post 1
- post 2
- etc, etc

最佳答案

你不能同时使用once()的promise和回调。你应该选择其中之一。通常最好选择使用 Promise。

return oldItemsQuery.once('value').then(snapshot => {
var updates = {};
snapshot.forEach(child => {
updates[child.key] = null;
});
return ref.update(updates);
});

关于javascript - Firebase 功能问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54272195/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com