更新到v1.22后无法进行Flutter的“类型”转换数据

问题描述

我正在从graphql端点获取数据,并通过将响应转换为转换后的数据模型以便于字段访问而使用json_serializable包序列化数据。

奇怪的是,我的代码之前运行良好,但是自从我将Flutter版本更新为1.22以来,对模型的转换不再起作用,它会引发错误

:NoSuchMethodError:方法'map'在null上调用。 接收者:null 尝试调用:map(Closure:(dynamic)=> usermodelOne)}

以前没有发生过,所以我有点困惑,我要转换的代码如下:

  class UsersToFollowRepository{
  convertUsersToFollowRepositoryFromBackEnd(dataFromBackEnd) {
    List<usermodelOne> list;
    final data = dataFromBackEnd;
    List<dynamic> theData = data["DummyUser"];
    list = theData.map<usermodelOne>((json) => usermodelOne.fromJson(json)).toList();
    print('data is: $theData');
    return list;
  }

}

实际的graphql json响应是:

 "data": {
 "DummyUser": [
      {
        "firstName": "DummyA","userId": "DummyA","lastName": "DummyA","captionType": "DummyUser"
      },{
        "firstName": "DummyD","userId": "DummyD","lastName": "DummyD",]

       }

您可以看到我正在尝试在第一个代码段中使用data["DummyUser"]访问数据,并且正在访问它,但是此行转换失败 list = theData.map<usermodelOne>((json) => usermodelOne.fromJson(json)).toList();我很困惑,因为它在升级之前就已经起作用了。可能是什么问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)