我正在创建一个具有许多相互依赖的用户的应用程序。
例如,当用户注册时,他输入了他得到的参考号 来自推荐他加入的人,所以这个过程将继续这样,直到它形成一个家谱层次。
这是另一个例子,伟大的奶奶将是她将她的钥匙交给奶奶的第一个用户(现在奶奶有两个钥匙,她自己的主要和祖母的参考钥匙)和奶奶将她的主键传给妈妈。现在妈妈将同时拥有(主键和外键)。如果她决定生孩子,那么该过程将以该方式继续进行。
现在我的问题是如何在firebase中的一个View中列出这一代从祖母到孩子这么多涉及如此多的密钥?
代码:
firebase.database().ref(users).orderBy('order by which key') ?
HTML:
<ul *ngFor="fam of family">
<li fam[key].username></li>which key goes in here....?
</ul>
答案 0 :(得分:2)
我将创建一个包含所有用户列表的族树节点:
families: {
"MTQ4MTUzNzc0NDYwNw": {
name: "smith",
users: {
"MTQ4MTUzNzc0NzU0Mw": true,
"MTQ4MTUzNzc0OTk0NQ": true,
"MTQ4MTUzNzc1MDg2OQ": true,
}
}
}
具有子/父属性的用户
users: {
"MTQ4MTUzNzc0NzU0Mw": {
nick: "gran",
children: {
"MTQ4MTUzNzc0OTk0NQ": true,
"MTQ4MTUzODMzMDEyNQ": true,
},
parents: {
},
},
"MTQ4MTUzNzc0OTk0NQ": {
nick: "mom",
children: {
},
parents: {
"MTQ4MTUzNzc0OTk0NQ": true,
},
},
}
然后加载族树并在客户端处理它的用户。如果太多,您可以将JSON.stringify(client_side_family_tree)
保留在那里。这只是数据结构,你必须弄清楚UI ......
PS。我知道奇怪的妈妈没有孩子:p