繁体   English   中英

Flutter Cloud Firestore:错误:参数类型“对象? Function()' 无法分配给参数类型 'Map<string, dynamic> '</string,>

[英]Flutter Cloud Firestore: error: The argument type 'Object? Function()' can't be assigned to the parameter type 'Map<String, dynamic>'

我正在尝试更新一些使用旧 Firestore 版本(版本 0.9.13)的代码,我正在将其更新到最新版本。 此代码应提取数据并填充图形。

我已尝试降级和升级以找到可用的版本,但我似乎找不到可用的版本。 有人建议向 model 添加一个新参数,但我不确定这是否是正确的方法。

错误信息:

error: The argument type 'Object? Function()' can't be assigned to the parameter type 'Map<String, dynamic>'. (argument_type_not_assignable at [firebase] lib\code\moodhomepage.dart:47)

代码:

Widget _buildBody(BuildContext context) {
return StreamBuilder<QuerySnapshot>(
  stream: FirebaseFirestore.instance.collection('moods').snapshots(),
  builder: (context, snapshot) {
    if (!snapshot.hasData) {
      return LinearProgressIndicator();
    } else {
      List<Mood> mood = snapshot.data!.docs
          .map((documentSnapshot) => Mood.fromMap(documentSnapshot.data))
          .toList();
      return _buildChart(context, mood);
    }
  },
);

}

添加返回数据的类型:

改变这个:

return StreamBuilder<QuerySnapshot>(

进入这个:

return StreamBuilder<QuerySnapshot<Map<String,dynamic>>(

暂无
暂无

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

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