Firebase使用列表数据

时间:2016-11-08 16:01:16

标签: angularjs firebase ionic-framework firebase-realtime-database angularfire

"groups": {

"techpioneers": {

      "name": "Historical Tech Pioneers",

      "members": {
        "alovelace": true,
        "ghopper": true,
        "eclarke": true
      }
    },
    ...
  }

这种结构可以在firebase文档中找到,但我无法弄清楚如何做“成员”的孩子。如何将'wildcard'用户名作为键,将boolean作为值?

2 个答案:

答案 0 :(得分:1)

您可以使用set()。 Firebase可与URL配合使用,因此您可以访问members,如示例所示。

firebase.database().ref('groups/techpioneers/members').set({
    alovelace: true,
    ghopper: true,
    eclarke: true
});

编辑:

您可以将alovelace设置为当前的uid。首先得到当前用户的uid。

var user = firebase.auth().currentUser;
var uid = '';
if (user != null) {
    uid = user.uid;
}

然后设置

var Obj = {};
Obj[uid] = true;
firebase.database().ref('groups/techpioneers/members/').set(Obj);

如果要在成员中设置多个用户,可以使用push()

var Obj = {};
Obj[uid] = true;
firebase.database().ref('groups/techpioneers/members/').push(Obj);

查看文档here

答案 1 :(得分:1)

实际上你只需要将boolean值(或用户名对象)写入数据库。添加第一个子节点时,将创建所需的子节点。

例如:

firebase.database().ref('groups/techpioneers/members' + username).set(true);

firebase.database().ref('groups/techpioneers/members').set({username: true});