AngularFire firebase 中有没有一种方法可以在一个查询中获取多路径数据
Is there a way in AngularFire firebase to get multipath data in one query
我想从diretory/0GZfwgQqXRcJ3o2G23vClsEbPay1/files
和directory/BgHYpuDpE3c7tRYuG2d8k0xHr2E2/files
这两个路径获取数据快照或valueChanges()。
然而,这些路径将是动态的并且可以不止一个。我不想申请循环并订阅每条路径。我想要包含所有这些快照的单个集合数组。
如何使用 AngularFire 库执行此操作?
这里是数据库结构
Firebase 实时数据库始终检索完整节点。虽然 可以通过查询过滤哪些子节点 return,但无法 return 每个子节点的属性子集。
当您需要这个时,通常意味着您应该重组数据以允许 use-case。例如,在您的 JSON 中,您可以有一个 top-level files
子级,然后是它下面的目录 ID,而 只是 文件直接地。这样你就可以通过阅读 /files
.
来阅读所有文件
Firebase 文档在 avoid nesting data and flattening your data structures 下对此进行了介绍。
你不能。 Firebase 不支持多路径查询。您可以使用 rsjx 的帮助来加入两个可观察对象并等待它们的结果 return 然后加入它们。有关详细信息,请参阅本文 Is There Such A Thing As "Multi-Path Push" in Firebase Real-Time Datasbase?
我想从diretory/0GZfwgQqXRcJ3o2G23vClsEbPay1/files
和directory/BgHYpuDpE3c7tRYuG2d8k0xHr2E2/files
这两个路径获取数据快照或valueChanges()。
然而,这些路径将是动态的并且可以不止一个。我不想申请循环并订阅每条路径。我想要包含所有这些快照的单个集合数组。
如何使用 AngularFire 库执行此操作?
这里是数据库结构
Firebase 实时数据库始终检索完整节点。虽然 可以通过查询过滤哪些子节点 return,但无法 return 每个子节点的属性子集。
当您需要这个时,通常意味着您应该重组数据以允许 use-case。例如,在您的 JSON 中,您可以有一个 top-level files
子级,然后是它下面的目录 ID,而 只是 文件直接地。这样你就可以通过阅读 /files
.
Firebase 文档在 avoid nesting data and flattening your data structures 下对此进行了介绍。
你不能。 Firebase 不支持多路径查询。您可以使用 rsjx 的帮助来加入两个可观察对象并等待它们的结果 return 然后加入它们。有关详细信息,请参阅本文 Is There Such A Thing As "Multi-Path Push" in Firebase Real-Time Datasbase?