firebase实时数据库检查记录是否存在

firebase实时数据库检查记录是否存在,firebase,ionic-framework,firebase-realtime-database,angularfire2,Firebase,Ionic Framework,Firebase Realtime Database,Angularfire2,我正在使用angularfire2和我的ionic应用程序,并已启用facebook登录 当用户第一次使用fb登录时,我自然不会在我的firebase DB中有任何记录。我想使用facebook返回的uid作为节点创建一个用户节点 我可以检索它的方法如下所示。我可以通过查看它是否有子对象等进行检查,但这是建议进行此类检查的方法吗?我也不知道如何添加subscribe,因为我假设这应该是一个异步操作,等待它确认用户还不存在。请告知 const userRef = this.db.object("/

我正在使用angularfire2和我的ionic应用程序,并已启用facebook登录

当用户第一次使用fb登录时,我自然不会在我的firebase DB中有任何记录。我想使用facebook返回的uid作为节点创建一个用户节点

我可以检索它的方法如下所示。我可以通过查看它是否有子对象等进行检查,但这是建议进行此类检查的方法吗?我也不知道如何添加subscribe,因为我假设这应该是一个异步操作,等待它确认用户还不存在。请告知

const userRef = this.db.object("/users/" + uid)

仅仅构建对数据库中某个位置的引用(如上面代码所示)并不能说明该位置是否存在数据。需要查询位置,以找出其中存在的数据。

示例代码来自firebase web API文档

var starCountRef=firebase.database().ref('posts/'+postd+'/starCount'); starCountRef.on('value',函数(快照){ updateStarCount(postElement,snapshot.val());
});

请与firebase一起检查此ionic starter repo,它具有fb登录和配置文件自定义。上面使用angular firestore,但我使用的是firebase realtimeDB@Frank你盲目地把它标为复制品。这个问题与angularfire2有关,它没有once方法。AngularFire构建在Firebase JavaScript SDK之上。因此,链接答案中的方法也可用于我们的AngularFire代码。如果因为使用AngularFire而认为需要另一种方法,请在问题中说明如何使用检查。请根据我的使用案例给出任何示例?从文档开始:这不是
angularfire2