json服务类中response.body出错

json服务类中response.body出错,json,flutter,dart,Json,Flutter,Dart,我在数据、地图和项目上出错。有人能解释一下我为什么会犯这些错误吗 List<UserModel> userFromJson(String jsonString) { final data = json.decode(jsonString) as String; return List<UserModel>.from(data .map((item)=>UserModel.fromJson(item)); List userFromJ

我在数据、地图和项目上出错。有人能解释一下我为什么会犯这些错误吗

  List<UserModel> userFromJson(String jsonString) {
    final data = json.decode(jsonString) as String;
     return List<UserModel>.from(data
     .map((item)=>UserModel.fromJson(item));
List userFromJson(字符串jsonString){
final data=json.decode(jsonString)作为字符串;
返回列表。从(数据)
.map((项)=>UserModel.fromJson(项));
和完整的编码来修复它


这是因为您将json数据解码为字符串,而您应该将其解码为a,然后将其映射到创建列表

试一试

final data=json.decode(responseBody.cast();
在这里复制我的函数,你可以在任何地方调用parseResponse,然后使用它创建你的对象列表

List<Map<String, dynamic>> parseResponse(String responseBody) {
  final parsed = json.decode(responseBody).cast<Map<String, dynamic>>();
  List<Map<String, dynamic>> list = [];
  parsed.map((e) => list.add(e)).toList();
  return list;
}
列表解析响应(字符串响应库){
final parsed=json.decode(responseBody.cast();
列表=[];
parsed.map((e)=>list.add(e)).toList();
退货清单;
}
用例


Future<List<UserModel>> userFromJson() async {
    Response response = await http.post(); // your http method
    List<Map<String, dynamic>> list = parseResponse(response.body);
    return list.map((e) => UserModel.fromJson(e)).toList();
}

Future userFromJson()异步{
Response Response=wait http.post();//您的http方法
List=parseResponse(response.body);
return list.map((e)=>UserModel.fromJson(e)).toList();
}

仍然存在错误且无法解决我添加了我的示例,请尝试在list=parseResponse(response.body);;中使用该唯一错误。是否需要依赖项?是的,我将userFromJsom方法放在最前面。是的,抱歉,我在那里犯了一个错误。请再次检查我的答案。

Future<List<UserModel>> userFromJson() async {
    Response response = await http.post(); // your http method
    List<Map<String, dynamic>> list = parseResponse(response.body);
    return list.map((e) => UserModel.fromJson(e)).toList();
}