firebase检索返回得太早

firebase检索返回得太早,firebase,firebase-realtime-database,Firebase,Firebase Realtime Database,我使用以下代码从firebase db检索数据 firebase.database().ref('/users/' + uid.toString()).once('value').then(snapshot => { var data = snapshot.val(); 不幸的是,then函数在snapshot.val()有值之前执行得太早。快照有值,但没有snapshot.val()。有人碰到这个吗?一两秒钟后,then()再次执行,并且snapshot.va

我使用以下代码从firebase db检索数据

 firebase.database().ref('/users/' + uid.toString()).once('value').then(snapshot => {
            var data = snapshot.val();

不幸的是,
then
函数在
snapshot.val()
有值之前执行得太早。快照有值,但没有
snapshot.val()
。有人碰到这个吗?一两秒钟后,then()再次执行,并且
snapshot.val()
获取一个值。

从您共享的代码中很难确定发生了什么。你能给我们一个片段,如果运行显示问题吗
Log.i()
语句通常非常有用,尤其是当您显示它们打印的内容,并说出您希望它们打印的内容时。data返回null,然后第二秒返回一个对象。没关系。现在工作