Firebase Web检索数据

网络迷

我在firebase中具有以下数据库结构

在此处输入图片说明

我正在尝试获取属于特定用户ID(uid)的数据。该文档具有以下示例:

firebase.database().ref('/users/' + userId).once('value').then(function(snapshot) {
  var username = snapshot.val().username;
  // ...
});

但是,如何在不知道每个对象的唯一键的情况下从示例中检索数据?

更新:

我尝试通过添加用户ID作为主键来尝试一种新方法,并且每个子对象都有其自己的唯一ID。

在此处输入图片说明

现在的挑战是如何获得“ title”的价值。

程序
firebase.database().ref('/tasks/').orderByChild('uid').equalTo(userUID)

好吧,这很简单。然后,您可以像这样使用它:

return firebase.database().ref('/tasks/').orderByChild('uid').equalTo(userUID).once('value').then(function(snapshot) {
  var username = snapshot.val().username;
  // ...
});

当然,您需要设置userUID。

这是带有一些过滤的查询。有关检索数据的更多信息-Firebase文档

编辑:新挑战的解决方案是:

var ref = firebase.database().ref('/tasks/' + userUID);
//I am doing a child based listener, but you can use .once('value')...
ref.on('child_added', function(data) {
   //data.key will be like -KPmraap79lz41FpWqLI
   addNewTaskView(data.key, data.val().title);
});

ref.on('child_changed', function(data) {
   updateTaskView(data.key, data.val().title);
});

ref.on('child_removed', function(data) {
   removeTaskView(data.key, data.val().title);
});

请注意,这仅是示例。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章