如何检查颤振中是否存在文档?

时间:2021-05-07 20:36:23

标签: firebase flutter dart google-cloud-firestore

IM 正在尝试确定文档是否存在。我想用streambuilder来改变方法,如果它存在的话。这是我如何尝试

 StreamBuilder(
                                  stream: FirebaseFirestore.instance
                                      .collection("videos")
                                      .doc(videos.data()['id'])
                                      .collection("uservotes")
                                      .doc(uid)
                                      .snapshots(),
                                  builder: (context, sasapshot) {
                                    if (sasapshot.connectionState ==
                                        ConnectionState.waiting) {
                                      return CircularProgressIndicator();
                                    } else {
                                   
                                        mainAxisAlignment:
                                            MainAxisAlignment.end,
                                        children: [
                                          Container(

所以文档 videos.data()['id'] 是一个 video 。该流被一个流包裹,从那里我开始播放当前的视频。当前视频可能会发生变化,因为 2 个流是用 PageView.builder 包装的。我现在想要的是检查这些集合用户投票是否包含当前用户的 uid。所以uid。在滚动 PageView 时,我会检查每个视频。希望这很清楚。所以我的问题是我该怎么做?使用流检查用户投票子集合中是否存在 uid 作为文档?

1 个答案:

答案 0 :(得分:1)

您可以使用 exists 属性。

if (snapshot.data.exists) {
//return logic if the document exists based on uid 
}