在快照侦听器 Firestore 中看不到数组更新

时间:2021-07-01 14:22:18

标签: firebase flutter google-cloud-firestore

假设我有一个简单的文档,如下所示:

enter image description here

我将一个 snapshotListener 附加到这个集合。

代码在 dart 中,但它与我尝试过的任何语言的逻辑相同:

streamSubscription = query.snapshots().listen((event) {
      print("Listening event : " + event.docs.toString());
      for (DocumentChange documentChange in event.docChanges) {
        switch (documentChange.type) {
          case DocumentChangeType.added:
            addDoc(documentChange.doc);
            break;
          case DocumentChangeType.modified:
            updateDoc(documentChange.doc);
            break;
          case DocumentChangeType.removed:
            removeDoc(documentChange.doc);
            break;
        }
      }
    });

updateDoc() 方法是:

void updateDoc(DocumentSnapshot documentSnapshot) {
    Map<String, dynamic> data = documentSnapshot.data() as Map<String, dynamic>;
    TestObject test = TestObject.fromJson(data);
    print(test);
  }

现在,如果我在控制台中更改 namename 值会更改,我们可以在 print(test) 中看到它。
但是,如果我从数组中删除条目 secondtestvalueupdateDoc 会被触发,但 print(test) 仍然显示值...这意味着我的数组没有更新。

这是一个错误还是我遗漏了什么?

0 个答案:

没有答案