Преобразование данных Flutter "Тип" не работает при обновлении до версии 1.22

Я получаю данные из конечной точки graphql и сериализую данные с помощью пакета json_serializable путем преобразования ответа в преобразованную модель данных для облегчения доступа к полям.

Как ни странно, мой код и раньше работал нормально, но с тех пор, как я обновил свою версию Flutter до 1.22, преобразование в модель больше не работает, возникает ошибка:

:NoSuchMethodError: Метод "карта" был вызван при нулевом значении. Получатель: 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",
        "captionType": "DummyUser"
      },
]

       }

вы можете видеть, что я пытаюсь получить доступ к данным, используя data["DummyUser"] в самом первом фрагменте кода, и он обращается к нему, но в этой строке происходит сбой преобразованияlist = theData.map<UserModelOne>((json) => UserModelOne.fromJson(json)).toList();Я смущен, потому что он работал до обновления флаттера. В чем может быть проблема?

0 ответов

Другие вопросы по тегам