【问题标题】:Querying array from Firebase (React Native) [duplicate]从 Firebase 查询数组(React Native)[重复]
【发布时间】:2019-06-19 03:40:58
【问题描述】:

我是 react-native 和 firebase 的新手,我正在构建一个应用程序。我偶然发现了在 firebase 中使用“array”的问题(我知道 firebase 不适用于数组),但我想知道是否有某种方法可以检索这些数据。

这是我在服务器中的数据,我想获取所有具有产品“id”(红色)的购买

我尝试使用下面的代码和一些变体但没有成功,返回 null

firebase.database().ref('purchases').orderByChild("products/id")
.equalTo("-Lgida0VKuZZ6V7K0LkH").on('value', function (rawPurchases)

我想知道是否有办法获取这些信息。

谢谢。

【问题讨论】:

  • 请不要张贴文字或代码的图片。将代码直接复制到问题中并将其格式化为代码。
  • 您当前的数据模型可以轻松找到购买的所有产品。查找具有特定产品的所有购买并不容易。您将需要存储一个所谓的反向索引以允许该用例使用顶级节点product_purchases,在该节点下您拥有每个产品,然后在该节点下拥有包含该产品的所有购买。在这里查看我的答案:stackoverflow.com/questions/40656589/…

标签: javascript firebase react-native firebase-realtime-database


【解决方案1】:
var scoresRef = firebase.database().ref("purchases");
scoresRef.orderByChild("products").on("value", function(snapshot) {
  snapshot.forEach(function(data) {
    console.log("The " + data.id + " data is " + data.val());
  });
});

尝试此方法并查看更多here

【讨论】:

  • 感谢您的回复,但我需要一些服务器可以完成这项工作,而不是客户端。正如您所展示的,我将获得所有购买,然后在客户端上进行过滤
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-10-14
  • 1970-01-01
  • 2019-02-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多