Javascript / Typescript:展平通过firebase访问的对象

时间:2017-10-26 00:14:51

标签: angular typescript firebase firebase-realtime-database

我正在尝试从firebase数据库中获取数据。我这样得到了Object结构:

enter image description here

我想这样做:

enter image description here

在前端是否有任何优雅的方法,或者更好地在数据库中进行树结构的更改?

我在当前形式中拥有它的唯一原因是,它使我以后更容易形成树层次结构。

1 个答案:

答案 0 :(得分:1)

你只需要手动完成,但幸运的是它并不太难。如果snap是您获得的包含postId/...孩子的firebase快照,那么:

const results = [];
snap.forEach(child => {
    child.forEach(grandchild => {
        results.push({
            id: child.key,
            uid: grandchild.key,
            ...grandchild.val(),
        });
    });
});

// Do stuff with results...