【问题标题】:How to get specific data from Firebase using JavaScript?如何使用 JavaScript 从 Firebase 获取特定数据?
【发布时间】:2019-09-09 22:31:53
【问题描述】:

我试图从实时数据库中以特定 ID 组织一些数据

例如,这是我的 JSON 对象:

{
    1: {
        Name :"karan",
        Bio:"hello this is Karan",
    }
    2: {
        Name :"gandhi",
        Bio:"hello this is gandhi", 
    }
}

我希望所有数据都排列在1 中。有没有办法做到这一点?如果将数据按以下格式排列在对象中会更好:

var data = {
    Name : "karan",
    Bio : "hello this is Karan",
}

这应该与原始对象中给出的顺序相同

谢谢

【问题讨论】:

  • 你希望数据如何排列;我假设在一个数组中。另外,请添加您所做的任何尝试
  • 我想把数据排列成一个对象
  • 你能在答案中给我一个例子吗

标签: javascript firebase firebase-realtime-database


【解决方案1】:

我想你要找的是Object.values()

假设您的数据库如下所示:

{
    1: {
        "Name" : "karan",
        "Bio" : "hello this is Karan",
    },
    2: {
        "Name" : "gandhi",
        "Bio" : "hello this is gandhi", 
    }
}

您想检索没有键“1”和“2”的数据。您的查询将是:

// Let's call your node "foo"
firebase.database().ref("foo").once("value").then(data => {
     console.log(Object.values(data.val()));
});

尝试执行以下操作:

var data = {
    1: {
        "Name" : "karan",
        "Bio" : "hello this is Karan",
    },
    2: {
        "Name" : "gandhi",
        "Bio" : "hello this is gandhi", 
    }
}

console.log(Object.values(data));

在此处阅读更多信息:https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Objets_globaux/Object/values

【讨论】:

  • 我是否必须指定对密钥 1 的引用?还是正常引用整个对象就可以了?
  • 取决于你想要什么。我的示例是针对整个对象的。如果您只想要一个特定的密钥,则必须更改为 Object.values(data.val()["1"])
猜你喜欢
  • 2019-07-03
  • 2021-10-25
  • 1970-01-01
  • 2021-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多