我正在使用react-native-firebase开发一个react-native应用程序,我正在尝试实现一个事务 . 这是我的代码:

const roomRef = firebase.database().ref('rooms').child(roomKey)
return roomRef.transaction(function(room) {
  console.log('TRANSACTION STARTED')
  if (room && !room.joiner) {
    room.joiner = userId
  }
  return room
}, function(error, committed, snap) {
  if (error) console.log(error)
  if (committed) console.log('COMMITTED')
  console.log(snap.val())
})

问题是这个事务函数似乎没有执行 . 我确定以前的代码运行,但是数据库中没有更新,没有console.log,没有 . 有人可以帮我吗?

EDIT

我注意到,无论条件是什么,我的应用程序都没有任何交易 . 在 Cloud 功能中,我使用的是管理员SDK,在这种情况下,交易工作正常 .