firebase 我如何查询子集合注解数据,因为我需要在反馈列表中显示它?

czq61nw1  于 2023-04-22  发布在  其他
关注(0)|答案(1)|浏览(108)

我目前正在使用Firestore数据库构建一个项目,该数据库有一个反馈文档,每个反馈都有其标题,详细信息和好评,沿着它有一个子集合,因为这些评论将有进一步的回复。
我应该如何查询的意见,在这样一种方式,他们我将能够显示他们沿着反馈,因为我需要显示他们随着反馈作为一个列表,并显示评论长度与它。
让我首先解释一下文档的结构,有一个反馈文档,每个反馈都有一个feedbacktitle,feedbackdetail和upvote字段,我必须将评论作为一个子集合,因为它们也会有一个进一步的回复子集合。
我当前的问题是如何查询我的子集合

onSnapshot(feedbacksCol, async snapshot => {
  const data = snapshot.docs
  const docs = data.map((d) => ({
    id: d.id,
   ...d.data(),
    comment: ??//      
  setCurrentFeedbacks(docId)
})

我怎样才能得到commentssubcollection的计数,并直接将其存储在commentpropery中?有什么方法可以做到吗
上面是能够让我的feeback集合,但我如何查询子集合内,因为我需要显示的长度评论沿着反馈,我想得到的意见对每个反馈的数量和存储在同一个对象,因为我需要显示计数的意见,在每个反馈
文档的结构如下所示

yhived7q

yhived7q1#

要从comments子集合中读取文档,您可以执行以下操作:

const querySnapshot = await getDocs(collection(db, "feedbacks", d.id, "comments"));

这里的d.id是您要阅读其注解的feedbacks文档的ID。
对于特定comments子集合中的get the count of documents,可以调用getCountFromServer而不是getDocs

相关问题