【问题标题】:How to get an object with it's parent from firebase?如何从firebase获取具有其父级的对象?
【发布时间】:2020-09-20 08:43:18
【问题描述】:

我想从 firebese 获取一个具有特定值和该对象父级名称的对象。但由于某些原因我做不到。

首先我将描述我所拥有的: 具有下一个结构的数据库:

db
|
+--clients
       |
       +--kua
       |   |
       |   +--kuaName1
       |   |
       |   +--kuaName2
       |   |
       |   +--kuaName3
       |
       +--uo

在每个 kuaName 中,我都有一个包含一些信息的对象,其中一个键是“kuaEdrpou”,这个键的值对于每个 kuaName 都是唯一的。所以我有下一个逻辑:

  1. 通过 kuaEdrpou 查找对象。
  2. 获取此对象名称(kuaName1、kuaName2、kuaName3)和数据以在我的应用程序中使用它们。

我还有从 firebase db 获取数据的功能:

const stocksRef = firebase.database().ref().child('clients/kua');
stocksRef.orderByChild('kuaEdrpou').equalTo(this.state.kuaEdrpou).once("value",snapshot => {
    let snap = snapshot.exportVal();
    console.log("snapshot", snap);
}

Console.log 向我显示了一个包含三个键的对象

所以我的问题是如何从 firebase {kuaName1:{kuaEdrpou: some id}} 对象以及为什么 snapshot.exportVal() 返回一个内部包含三个嵌套对象的对象?

【问题讨论】:

    标签: reactjs firebase-realtime-database


    【解决方案1】:

    你在 ref 上设置快照

    firebase.database().ref().child('clients/kua');
    

    因此,每当发生更改/更新时,您都会获得整个 kua 及其所有子项。

    如果您需要 kua 下的任何特定子项,请添加该子项的引用,例如

    firebase.database().ref().child(`clients/kua/${this.state.kuaEdrpou}`);
    

    也许这样你就可以得到你想要的对象

    【讨论】:

    • 快照为空
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-07
    • 1970-01-01
    • 1970-01-01
    • 2022-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多