Firebase 处理列表数据
Firebase working with list data
"groups": {
"techpioneers": {
"name": "Historical Tech Pioneers",
"members": {
"alovelace": true,
"ghopper": true,
"eclarke": true
}
},
...
}
这种结构可以在 firebase 文档中找到,但我不知道如何做 "members" child。如何写 'wildcard' 用户名作为键,布尔值作为值?
您可以使用 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
您实际上只需要将布尔值(或用户名对象)写入数据库即可。当您添加第一个子节点时,将创建所需的子节点。
例如:
firebase.database().ref('groups/techpioneers/members' + username).set(true);
或
firebase.database().ref('groups/techpioneers/members').set({username: true});
"groups": {
"techpioneers": {
"name": "Historical Tech Pioneers",
"members": {
"alovelace": true,
"ghopper": true,
"eclarke": true
}
},
...
}
这种结构可以在 firebase 文档中找到,但我不知道如何做 "members" child。如何写 'wildcard' 用户名作为键,布尔值作为值?
您可以使用 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
您实际上只需要将布尔值(或用户名对象)写入数据库即可。当您添加第一个子节点时,将创建所需的子节点。
例如:
firebase.database().ref('groups/techpioneers/members' + username).set(true);
或
firebase.database().ref('groups/techpioneers/members').set({username: true});