【问题标题】:Bad state: field does not exist within the DocumentSnapshotPlatform. (something wrong with StreamBuilder)错误状态:DocumentSnapshotPlatform 中不存在字段。 (StreamBuilder 有问题)
【发布时间】:2021-07-21 11:09:23
【问题描述】:

出现错误请查看图片。 enter image description here

错误代码

在构建 StreamBuilder>(dirty, state: _StreamBuilderBaseState, AsyncSnapshot>>#92e48) 时引发了以下 StateError: 错误状态:DocumentSnapshotPlatform 中不存在字段

StreamBuilder<QuerySnapshot>(
                stream: _store.collection('messages').snapshots(),
                builder: (context ,snapshot){
                  if(!snapshot.hasData){
                    return Center(
                      child: CircularProgressIndicator(
                        backgroundColor: Colors.blue,
                      ),
                    );
                  }
                  final messages = snapshot.data.docs;
                  List<Text> messagesWidgets =[];
                  for(var message in messages){
                    final messageID = message['id'];
                    final messageText = message['text'];
                    final messagesWidget = Text('$messageID from $messageText');
                    messagesWidgets.add(messagesWidget);
                  }
                  return
                      Column(
                        children : messagesWidgets,

                      );
                }
            ),

【问题讨论】:

    标签: android flutter dart flutter-layout flutter-dependencies


    【解决方案1】:

    在生成器方法中显示文档数据时,传递文档中不存在的错误属性名称也可能发生此问题。这为我解决了这个问题。

    您也可以尝试在控制台中打印messages,然后在循环中分配。

    【讨论】:

      猜你喜欢
      • 2021-05-16
      • 2021-09-28
      • 2021-09-27
      • 1970-01-01
      • 1970-01-01
      • 2021-08-21
      • 2021-10-26
      • 1970-01-01
      • 2021-08-24
      相关资源
      最近更新 更多