首页 > 解决方案 > Flutter Firestore QuerySnapshot 没有 getter 'document 的实例

问题描述

我正在使用它从 firestore 数据库中获取消息列表,但是,它给了我一个错误:

颤振:以下 NoSuchMethodError 被抛出构建:颤振:类'QuerySnapshot'没有实例获取器'document'。颤振:接收者:'QuerySnapshot'的实例颤动:尝试调用:文档

我正在使用的代码是:

StreamBuilder(
                stream: Firestore.instance
                    .collection('messages')
                    .document(groupId)
                    .collection(groupId)
                    .orderBy('timestamp', descending: true)
                    .snapshots(),
                builder: (BuildContext context, AsyncSnapshot snapshot) {
                  if (!snapshot.hasData) {
                    return Center(
                      child: CircularProgressIndicator(),
                    );
                  } else {
                    listMessage = snapshot.data.documents;
                    return ListView.builder(
                      padding: EdgeInsets.all(10.0),
                      itemBuilder: (context, index) =>
                          buildItem(index, snapshot.data.document[index]),
                      itemCount: snapshot.data.documents.length,
                      reverse: true,
                      controller: scrollController,
                    );
                  }
                },
              ),

我是 Firestore 的新手,noSQL 有人可以帮忙吗?

标签: androidiosfluttergoogle-cloud-firestore

解决方案


我遇到了同样的问题,我的解决方法是更改documents​​为docs,见下文:

snapshot.data.docs[index]

推荐阅读