一直在寻找答案。也许我是盲人,但我找不到任何足够的答案。
我在Firebase中有一个需要查询的对象列表。我将数据推送到我认为的列表中,非常像这样:
this.afDB.list(`users/${auth.uid}/events`).push(data);
然后我要查询它:
var eventsByUser = this.rootRef.child('users').child(auth.uid).child('events').orderByChild('name');
eventsByUser.on('value', snap => {
this.events.push(snap.val());
console.log(this.events[0]);
})
查询的输出如下:
{
-KxVJah-5OzL029wq8p5: {date: "2017-10-28", description: "rg", name: "new event"},
-KxVJbLt6ZcO8OpIomcO: {date: "2017-10-28", description: "rg", name: "new event 2"},
-KxVJbqx4cSN5YqhxvZ4: {date: "2017-10-28", description: "rg", name: "new event 3"}
}
它不在列表中;它返回一个对象而不是一个对象列表。因此,我不能只使用密钥对其进行索引,例如:-KxVJbLt6ZcO8OpIomcO
。如何解决这个问题,以便我可以访问每个对象?我对Firebase API并不太热衷。