簡體   English   中英

從 Flutter 中的 firestore 中讀取所有文檔

[英]Read all documents from collection from firestore in Flutter

我嘗試將集合中的所有文檔作為 model 列表從 Firestore 中讀取,例如 java 代碼。

Java 代碼為

FirebaseFirestore.getInstance().collection("Product").addSnapshotListener((value, error) -> {
            if (!value.isEmpty()){
                List<Product> productList = value.toObjects(Product.class);
            }
        });

我嘗試在 flutter

QuerySnapshot data;
    List<DocumentSnapshot> snapshot = new List<DocumentSnapshot>();
    List<Product> productList = [];

    data = await FirebaseFirestore.instance
        .collection('Product')
        .get();

    
      snapshot.addAll(data.docs);
      productList = snap.map((e) => Product.fromFirestore(e)).toList();
    

但列表始終為空,但快照長度始終與我的數據庫相同。

數據庫Model class

void getProducts () async {
List<Product> productList = [];
var productsFromFirebase = await FirebaseFirestore.instance.collection("Product").get();

 if (productsFromFirebase.docs.isNotEmpty) {

   for (var doc in productsFromFirebase.docs) {
   productList.add(Product.fromFirestore(doc)); //without '.data()' because you have it in your model.
   } 
 }
 print(productList.length); //prints the length of your products list.
}

暫無
暫無

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

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