在一定时间后自动更改Firestore中的字段值

时间:2020-09-18 10:34:50

标签: javascript firebase google-cloud-firestore google-cloud-functions

我正在使用Javascript,这是我的数据的样子。 Here the ss of my firestore

我希望该功能每24小时将我的stateChanges字段更新为0。(请参见带圆圈的字段)。 任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

Firestore中没有内置的此类功能。

一种可能的解决方案是使用an HTTP Cloud Function,它将更改状态并每24小时用Cloud Scheduler cron job调用一次。

答案 1 :(得分:0)

最好的方法是使用Firebase云功能-设置起来非常容易,然后您可以设置Cron作业来执行常规的预定活动。

您可以在此处找到有关云功能的更多信息: https://firebase.google.com/docs/functions

您需要的云功能如下所示:

exports.scheduledFunction = functions.pubsub.schedule('0 0 * * *').onRun((context) => {
  admin.firestore().collection('stateInfo').get().then(snapshot=>{
     snapshot.forEach(doc=>doc.update({stateChanges:0}))
     })
  });

以下是预定功能的参考: https://firebase.google.com/docs/functions/schedule-functions

并且可以在此处生成用于调度的cron表达式(例如0 0 * * *): https://crontab.guru/