gpt4 book ai didi

flutter - 发生异常: 'MappedListIterable'类型不是 'List'类型的子类型stackTrace:#0 new GenreResponse.fromJson

转载 作者:行者123 更新时间:2023-12-03 04:40:47 25 4
gpt4 key购买 nike

我在flutter项目中遇到Exception错误,有人可以帮我吗


class GenreResponse {
final List<Genre> genres;
final String error;

GenreResponse(this.genres, this.error);

GenreResponse.fromJson(Map<String, dynamic> json)
: genres = (json["genres"] as List).map((e) => new Genre.fromJson(json)),
error = "";

GenreResponse.withError(String errorValue)
: genres = List(),
error = errorValue;
}
另外,我在这里添加我的genre.dart代码以更好地理解
  final int id;
final String name;

Genre(this.id, this.name);

Genre.fromJson(Map<String, dynamic> json)
: id = json["id"],
name = json["name"];
}

最佳答案

只需将.toList()添加到您的.map()行:

GenreResponse.fromJson(Map<String, dynamic> json)
: genres = (json["genres"] as List).map((e) => new Genre.fromJson(json)).toList(),
error = "";
发生这种情况是因为 .map()的输出是 MappedListIterable而不是 List。令人讨厌的一点是,编译器未捕获到该错误,但是我想这与继承的工作方式有关。

关于flutter - 发生异常: 'MappedListIterable<dynamic, Genre>'类型不是 'List<Genre>'类型的子类型stackTrace:#0 new GenreResponse.fromJson,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63269491/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com