通过查询从Firebase获取用户电子邮件

时间:2014-11-25 21:56:15

标签: firebase

我想在我的应用中通过电子邮件实现搜索,但有点坚持查询的设计。 我的数据结构如下所示

users {
      uid {
          email: email@email.com 

我尝试了以下查询:

console.log(reqestEmail); // proper email here
new Firebase(USERS)
  .startAt(reqestEmail)
  .endAt(reqestEmail)
  .once('value', function(snap){
     var foundUser = snap.val();

     console.log(foundUser) // output is null
    });

我想问题在于我在路径上有一个uid。但是如何使用这种数据结构实现搜索 - 如果我这个uid是需要的结果?

如果使用Firebase 2.0.2和AngularFire 0.9很重要

对不起伙计们:诺布在这里。也有暂停帐户的危险。

1 个答案:

答案 0 :(得分:7)

您必须先通过电子邮件地址订购,以便您可以对其进行过滤:

console.log(reqestEmail); // proper email here
new Firebase(USERS)
  .orderByChild('email')
  .startAt(reqestEmail)
  .endAt(reqestEmail)
  .once('value', function(snap){
     var foundUser = snap.val();
     console.log(foundUser) // output is correct now
  });

此jsbin中的工作示例:http://jsbin.com/fenavu/2/edit?js,console