【问题标题】:Get map data from another map - Ionic 4, Firestore从另一个地图获取地图数据 - Ionic 4,Firestore
【发布时间】:2021-01-06 18:36:40
【问题描述】:

我想从 Firestore 的另一个地图中获取地图数据,有什么办法吗?

我希望能够一次提取pricedescr 数据,而不必一一调用它们。我设法通过指定它的确切目录来仅提取其中一个数据,就像在代码中一样:

From my .ts file

html file

如果有人能帮我解决这个问题那就太好了,我对这一切都很陌生 :") 谢谢!

【问题讨论】:

  • 在 Stack Overflow 上,您应该将相关代码复制到您的问题中并对其进行格式化,以便于阅读,而不是提供屏幕截图的链接。
  • @DougStevenson 感谢您的提示!将在下一个这样做

标签: typescript ionic-framework google-cloud-firestore


【解决方案1】:

无法过滤 Firestore 中的嵌套地图。要么您获取所有数据并在客户端过滤它们,要么在 Firestore 中重塑您的数据收集模式。例如,您可以将计划转换为地图数组:

plan [
   {desc: "things", price: 24}
]

然后在 firestore 中使用“array-contains”查询:

db.collection("cafes")
  .where("plans", "array-contains", {desc: "things", price: 12})
  .get()
  .then((snapshot) => {
    snapshot.docs.forEach((doc) => {
      console.log(doc.data());
    });
  });

但是,您需要将整个对象作为参数传递,数组包含才能起作用。

【讨论】:

  • 谢谢!!我已将其更改为一组地图,我得到了我需要的东西
  • 您能否帮我弄清楚如何将数据捕获到地图中并将该地图推送到 Firestore 中的数组中?谢谢。
  • 最好在一个单独的问题上提出这个问题,因为一个线程应该对应一个问题。
猜你喜欢
  • 2020-08-29
  • 1970-01-01
  • 2019-09-30
  • 1970-01-01
  • 2020-12-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-07-03
相关资源
最近更新 更多