JavaScript-Firebase是删除24小时以上儿童的更好方法

时间:2018-12-07 06:11:52

标签: javascript firebase firebase-realtime-database

我正在尝试删除24小时以上的聊天记录。
 为此,首先获取所有密钥,然后遍历这些密钥,然后像这样删除。

 const rootRef = db.ref('chat');
  rootRef.once('value', function (snapshot) {
    snapshot.forEach(function (snap) {
     const now = Date.now();
     const CUT_OFF_TIME = 24 * 60 * 60 * 1000;
     const cutoff = now - CUT_OFF_TIME;
     const uid = snap.key;
     const ref = db.ref('chat').child(uid);
     const oldItemsQuery = ref.orderByChild('timestamp').endAt(cutoff);
     const snapshot = oldItemsQuery.once('value').then(function (ds) {
        const updates = {};
          ds.forEach(child => {
            updates[child.key] = null;
          });
          return ref.update(updates);
       });
     });
   });

但是我不确定这是个好方法。
有人有更好的主意吗?

0 个答案:

没有答案