簡體   English   中英

Firebase Firestore get all Docs 在 Flutter 中為空

[英]Firebase Firestore get all Docs is empty in Flutter

我想從集合中獲取所有子文檔和 collections。

數據庫結構:

代碼片段:

_firestore.collection("messages").get().then((querySnapshot) => {getdata(querySnapshot)});

querySnapshot.docs.length始終為零。 我怎樣才能嘗試從集合中獲取所有數據?

Hrmmm 您當前的文檔查詢是什么樣的?

您的文檔的 ID 有點令人困惑,但我認為標准查詢應該有效。

注意:使用順序鍵/數字作為文檔和 collections ID 是危險的,以后會給您帶來很多問題。 如果您不自己生成唯一 ID,請讓 Firestore 為您生成。 Firebase - 最佳實踐

例如

監聽messages/2/1集合的變化:

 final snapshotStream = FirebaseFirestore.instance
        .collection('messages/2/1')
        .snapshots()
        .asBroadcastStream();

這將返回一個 stream,其中包含將“實時”更新的每個文檔的快照。 .asBroadCastStream()確保您可以向該 stream 注冊多個偵聽器。(看起來您將其用作某種聊天功能?)

一點額外的,一種訪問 stream 中所有文檔的方法:

 await for (final streamSnapshot in snapshotStream) {
          final documentsList = streamSnapshot.docs;
          /// Do something with documentsList
 }

讓我知道進展如何,祝你好運::)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM