Преобразование данных 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();
Я смущен, потому что он работал до обновления флаттера. В чем может быть проблема?