[英]flutter firebase cloud function emulator, on call functions not working
[英]NodeJs function not working as expected in Firebase Cloud functions
我對節點/Js 不熟悉,但我有 9 個函數需要在 Firebase 雲函數中使用,我在 ZBF12E1515C25C7D8C0352F1413AB9 上按預期工作了 function,但未按預期工作。
只是為了澄清我要更新的文檔在 firestore 的這個層次結構中:
用戶(集合)-> abcUser(文檔)-> 其他(集合)-> 限制器(文檔)
以下是在谷歌雲上成功運行但文檔沒有更新/更改的功能之一:
exports.resetLimiter = functions.pubsub
.schedule("*/5 * * * *")
.onRun( async (context) => {
const snapshot = await db.collection("users").get();
for (let i = 0; i < snapshot.docs.length; i++) {
await snapshot[i].query.get.collection("others").doc("limiter")
.update({
weeklyFlow: 0.0,
monthlyFlow: 0.0,
});
}
});
和平!
update()
返回 promise,但您忽略了它們。 這會導致 function 無需等待更新完成即可完成。 您需要在返回之前等待每個人。
此外,您的 function 在使用 Firestore API 的方式上似乎不正確。 DocumentSnapshot 對象get
屬性。 無論如何,我都會嘗試用await
重寫它。
for (var i = 0; i < snapshot.docs.length; i++) {
await db.collection("others").doc("limiter")
.update({
weeklyFlow: 0.0,
monthlyFlow: 0.0,
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.