簡體   English   中英

使用 Firebase Cloud Function 增加新用戶的實時數據庫計數

[英]Increment Realtime Database count on new user with Firebase Cloud Function

* 更新:這有效。 見下面的答案*

我正在嘗試編寫一個 Firebase 雲函數,它會在創建新用戶時增加實時數據庫/userCount值。

我嘗試了以下操作,但在incrementCountOnNewUser收到“TypeError: userCountRef.transaction is not a function”。

garage的值設置為true ,事務正在為我的另一個函數incrementCountOnOpen工作,但ref是從after事件對象派生的。

關於如何做到這一點的任何建議?

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

admin.initializeApp();

// const userCountRef = functions.database.ref("/userCount"); // does NOT work
const userCountRef = admin.database().ref('/userCount'); // THIS WORKS!

exports.incrementCountOnNewUser = functions.auth.user().onCreate((user) => {
  return userCountRef.transaction(count => count + 1);
});

exports.incrementCountOnOpen = functions.database.ref("/garage").onUpdate(({after}) => {
  const countRef = after.ref.parent.child('count');
  const newValue = after.val();

  return newValue
    ? countRef.transaction(count => count + 1)
    : null;
});

事實證明上面的代碼有效! 我已經從注釋掉的代碼(這不起作用)切換了。 我想它在我發布后沒有等待足夠長的時間來傳播,因為我現在看到它正在運行!

對困惑感到抱歉。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM