Javascript 如何通过键在Firebase数据库(Angular)中获取值?
我的目标是通过键在数据库中获取嵌套值。 在本例中,我只想获取当前登录用户的用户名 my db的结构如下所示: 我目前的解决办法是:Javascript 如何通过键在Firebase数据库(Angular)中获取值?,javascript,angular,firebase,firebase-realtime-database,angularfire2,Javascript,Angular,Firebase,Firebase Realtime Database,Angularfire2,我的目标是通过键在数据库中获取嵌套值。 在本例中,我只想获取当前登录用户的用户名 my db的结构如下所示: 我目前的解决办法是: this.db.list("/Users/"+this.userId).valueChanges().subscribe(details => { this.username = details[3] } 我想偏离这种方法,因为我不知道用户将获得更多的属性,任何数据库更改都不会传递用户名,是否有任何方法仅通过键搜索数据库并获取其各自
this.db.list("/Users/"+this.userId).valueChanges().subscribe(details => {
this.username = details[3]
}
我想偏离这种方法,因为我不知道用户将获得更多的属性,任何数据库更改都不会传递用户名,是否有任何方法仅通过键搜索数据库并获取其各自的值。我知道orderByChild和orderByKeys是存在的,但我无法确切理解它们是如何工作的,或者它们是否对这种特定情况有用。我宁愿使用
对象
:
this.db.object(“/Users/”+this.userId).valueChanges()
.订阅(详细信息=>{
this.username=details.username;
});
this.db.object("/Users/"+this.userId).valueChanges().subscribe(details => {
this.username = details["Username"]
}
谢谢你的回复。使用object似乎是合适的方法,但是使用代码会引发未知属性错误,正确的访问方法是使用details[“Username”]。对不起,我低估了大小写。很高兴看到它有所帮助。