繁体   English   中英

Flutter:如何解决值类型 Object 无法分配给 Map<string, dynamic> 在流构建器上</string,>

[英]Flutter: How to solve value type Object can't be assigned to Map<String, dynamic> on streambuilder

我试图从 firebase 获取数据并将数据显示到列表中,但在尝试将 map 文档数据放入列表以显示其内容时出现错误

在此处输入图像描述

这是我的代码

StreamBuilder<QuerySnapshot>(
                stream: users.snapshots(),
                builder: (BuildContext context,
                    AsyncSnapshot<QuerySnapshot> snapshot) {
                  if (snapshot.hasError) {
                    return const Center(
                      child: Text("Something went wrong"),
                    );
                  }

                  if (snapshot.connectionState == ConnectionState.waiting) {
                    return const Center(
                      child: Text("Loading"),
                    );
                  }

                  if (snapshot.hasData) {
                    return CustomScrollView(
                      slivers: [
                        SliverList(
                          delegate: SliverChildListDelegate(
                            snapshot.data!.docs.map(
                              (DocumentSnapshot document) {
                                Map<String, dynamic> data = document.data()!;
                                return ListTile(
                                  onTap: () => callChatDetailsScreen(
                                      context, data['name'], data['uid']),
                                  title: Text(data['name']),
                                  subtitle: Text(data['status']),
                                );
                              },
                            ).toList(),
                          ),
                        )
                      ],
                    );
                  }
                  return Container();
                })

我怎样才能解决这个问题?

改变这个:

(DocumentSnapshot document) {

进入这个:

(DocumentSnapshot<Map<String,dynamic>> document) {

data() data() T类型的值,class DocumenSnapshot以这种方式声明: abstract class DocumentSnapshot abstract class DocumentSnapshot<T extends Object?> Object

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM