Javascript 如何在Firestore中获取引用数组?
在Firestore中,我的聊天室集合具有以下结构:Javascript 如何在Firestore中获取引用数组?,javascript,google-cloud-firestore,Javascript,Google Cloud Firestore,在Firestore中,我的聊天室集合具有以下结构: chats: [ chat1: { jobs: [ jobs/job1, jobs/job2, jobs/job4 ] }, chat2: { jobs: [ jobs/job2, jobs/job3 ] } ] 如果我在c
chats: [
chat1: {
jobs: [
jobs/job1,
jobs/job2,
jobs/job4
]
},
chat2: {
jobs: [
jobs/job2,
jobs/job3
]
}
]
如果我在chat1
,并且我有数据,那么我就有了对作业的引用数组。我知道我有jobs/job1
,jobs/job2
和jobs/job4
如何查询和获取所有这些作业的数据
我可以做到:
firestore.doc(“作业/job1”).get()
和firestore.doc(“作业/job2”).get()
和firestore.doc(“作业/job3”).get()
但这似乎效率很低
我不明白如何过滤firestore.collection(“作业”)
来满足我的需求
我在这里看到了一个类似的问题,但是对于Java,我无法将其转换为JavaScript
我可以做:firestore.doc(“jobs/job1”).get()和firestore.doc(“jobs/job2”).get()和firestore.doc(“jobs/job3”).get(),但这似乎效率很低
这正是您想要做的-您可以迭代列表并单独获取每个文档。Firestore并没有提供一些优化的方法来使用web和移动SDK在一个查询中获取多个文档——只需使用自己的查询获取每个文档就足够了。这种方法不会有任何问题
另见:
我可以做:firestore.doc(“jobs/job1”).get()和firestore.doc(“jobs/job2”).get()和firestore.doc(“jobs/job3”).get(),但这似乎效率很低
这正是您想要做的-您可以迭代列表并单独获取每个文档。Firestore并没有提供一些优化的方法来使用web和移动SDK在一个查询中获取多个文档——只需使用自己的查询获取每个文档就足够了。这种方法不会有任何问题
另见: