我正在flutter中开发一个应用程序。我想在东京时间00:00
将Firestore的“users”集合中所有文档的“life”字段的值重写为“10(int)”。无论如何,我设法编写了代码,但我对JavaScript和函数一无所知,所以它无法工作。我想知道如何更正它。这是我的代码。
const functions = require("firebase-functions");
const admin = require("firebase-admin");
admin.initializeApp();
process.env.TZ = "Asia/Tokyo";
export const checkTimezone = functions.region('asia-northeast1').https.onRequest(async (req, res) => {
console.info(process.env.TZ)
});
exports.timer = functions.pubsub.schedule('00***').onRun((context) => {
functions.logger.info("timer1 start", {structuredData: true});
admin.firestore().collection("users").get().then(function(querySnapshot){
querySnapshot.forEach(function(doc){
doc.ref.update({
life:10
});
});
})
});
1条答案
按热度按时间thigvfpy1#
云函数的默认时区为
America/Los_Angeles
。您可以将时区设置为Asia/Tokyo
,这样函数将在日本的每个午夜运行。此外,您必须从函数返回一个承诺,在更新完成后终止它。请尝试重构代码,如下所示: