我想在我的应用程序中通过电子邮件来实现搜索,但是还停留在查询的设计上。
我的数据结构看起来像这样

users {
      uid {
          email: [email protected]

我尝试了以下查询:
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非常重要

抱歉,这里的菜鸟。也有暂记帐户的危险。

最佳答案

您必须先通过电子邮件地址订购,然后才能对其进行过滤:

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

10-07 20:55