云函数从用户余额中扣除值



我在正在构建的应用程序中大量使用云函数,并希望获得一些如何最好地解决此问题的建议。

我的函数看起来像这样

exports.deductFromBalance = functions.database.ref('listings{listing}').onCreate((snap, context) => {
const author = snap.val().uid;
return admin.database().ref(`balances/${snap.val().uid}`).update({
balance: //current balance -= 1
})
})

我需要一种方法,在每次成功创建列表时将余额减少 1。有没有办法让我在不读取当前值的情况下减小此值?

Firebase 实时数据库中没有原子递增/递减操作。您需要使用事务以原子方式根据当前值设置新值。

最新更新