Firebase云在一个功能中实现多个事务



我正在尝试创建一个同时执行两个事务的云函数。

我尝试过执行以下操作,只有第一个事务执行。。。当我添加第二个时,它不起作用,而且我没有错误。

功能:

exports.followIncrement = functions.database
.ref("/followers/{userId}").onCreate((snapshot, context) => {
const userId = context.params.userId;
const currentUserUid = Object.keys(snapshot.val())[0];
console.log(currentUserUid);
console.log(userId);
var followerCount = 
admin.database().ref('users').child(userId).child('followerCount')
var followingCount = 
admin.database().ref('users').child(currentUserUid).child('followingCount')
return followerCount.transaction((currentCount) => {
return currentCount || 0 + 1;
})
.then(() => {
return followingCount.transaction((currentCount) => {
return currentCount || 0 + 1;
})
})
})

我感谢所有的反馈!干杯

如果您执行以下操作会发生什么:

return followerCount.transaction((currentCount) => {
return currentCount || 0 + 1;
})
.then((count) => {
if (count.committed) {
return followingCount.transaction((currentCount) => {
return currentCount || 0 + 1;
})
}
})

相关内容

  • 没有找到相关文章

最新更新