代码之家  ›  专栏  ›  技术社区  ›  Roberto Pinheiro

如何使用angularfire从firebase数据库中检索没有“密钥”的用户列表?

  •  1
  • Roberto Pinheiro  · 技术社区  · 7 年前

    我正在使用AngularFire将我的页面连接到数据库。我想以页面列表的形式显示存储在firebase数据库中的所有用户。我存储这些用户的方式是通过他们的电子邮件,如下所示:

    users
       |_email:name
       |   
       |_email:name
       |
       |_email:name
       |
       |_...
    

    我面临的问题是,我不知道如何检索所有用户并将其放入数组中。

    我想这和 .list() ,但在这个说明中,我需要以不同的方式分隔用户,例如:

    user
       |_key1
       |   |_email:value
       |   |_name:value
       |_key2
       |   |_email:value
       |   |_name:value
       |_...
    

    我要把这个放在我的 credentialsArray Credetial 模型,以便我可以在表中列出它:

    this.credentialsArray.push(new Credential('name', 'email'));
    

    因为我是这样列的:

    <tr *ngFor="let item of credentialsArray">
       <td>{{ item.name }}</td>
       <td>{{ item.email }}</td>
    </tr>
    

    我该怎么做?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Troy Myers    7 年前

    从“用户”列表中,您可以使用如下循环将检索到的值推送到数组中:

    this.fireDB.list('user').snapshotChanges().subscribe(res => {
    
            res.forEach(doc => {
    
            this.credentialsArray.push(doc.payload.val());
    
        });
    
    });
    

    然后你的html代码就可以显示结果了。