你好,我正在做一个api调用,在那里我得到了一系列的横幅。我正在犯错误-
_TypeError (type 'List<dynamic>' is not a subtype of type 'Map<String, dynamic>')
横幅。飞奔
class BannersBloc {
late BannerRepository _bannerRepository;
late StreamController _streamController;
StreamSink get bannerListSink => _streamController.sink;
BannersBloc() {
_streamController = StreamController();
_bannerRepository = BannerRepository();
fetchBanners();
}
fetchBanners() async {
bannerListSink.add('Fetching Banners');
try {
Banners banners = await _bannerRepository.getBanners();
bannerListSink.add(banners);
} catch (e) {
bannerListSink.add(e.toString());
print(e);
}
}
dispose() {
_streamController.close();
}
}
横幅。飞奔
class Banners {
late String bannerImageUrl;
late String bannerImageAlt;
late bool isActive;
late int order;
late String id;
Banners(
{required this.bannerImageUrl,
required this.bannerImageAlt,
required this.isActive,
required this.order,
required this.id});
Banners.fromJson(Map<String, dynamic> json) {
bannerImageUrl = json['bannerImageUrl'];
bannerImageAlt = json['bannerImageAlt'];
isActive = json['isActive'];
order = json['order'];
id = json['id'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['bannerImageUrl'] = this.bannerImageUrl;
data['bannerImageAlt'] = this.bannerImageAlt;
data['isActive'] = this.isActive;
data['order'] = this.order;
data['id'] = this.id;
return data;
}
}
api_base_助手。飞奔
class APIHelper {
final String _baseURL =
"https://raw.githubusercontent.com/gautam-in/shopping-cart-assignment/master/server/";
Future<dynamic> get(String url) async {
try {
final response = await http.get(Uri.parse(_baseURL + url));
return json.decode(response.body);
} catch (err) {
throw new Exception("Something went wrong");
}
}
}
得到你的横幅。飞奔
class BannerRepository {
Future getBanners() async {
final response = await new APIHelper().get("banners/index.get.json");
return Banners.fromJson(response);
}
}
如果API的响应是一个列表,则错误是由getBanner
引发的。因为fromJson
方法期望类型为Map
class BannerRepository {
Future<List<Banners>> getBanners() async {
final response = await new APIHelper().get("banners/index.get.json");
// Sample Code, handler errors and other stuff
return response.map((e) =>Banners.fromJson(e)).toList();
}
}
我有一个问题,因为2小时。我有这个错误,我看到了更多的主题,但我不能解决它。 消息:_TypeError(类型列表不是类型映射的子类型)颤动 我的模型: 我的主题屏幕: 我尝试了更多的教程和不同的主题,但我有相同的错误。。。 非常感谢。
我想要一张地图 我的对象是 http代码在这里 我得到了错误 谢谢
我对Flutter编程非常陌生,我正在尝试导入一个本地JSON文件,其中包含书籍数据,如标题、作者、发布年份等。 最初我使用JSON-to-DART转换器来组装一个图书数据模型,现在我正在尝试创建一个函数,在该函数中,程序获取本地JSON文件,并使用类中的方法将数据解析为地图。 我遇到的问题是返回类型
我是一个新的颤振和得到类型错误。我正在尝试使用json自动序列化。 在做了一些调整后这里看起来是这样的 下面是我如何尝试从api获取数据 我的类如下所示 谁能帮我一下吗。我被困在这里了。我一直在尝试不同的方法,但都不管用。非常感谢。
因此,我创建了一个应用程序,通过api读取数据,并尝试解析JSON api 这是我的错误截图 我试着把它改成一个列表,但它仍然读取一个错误 这是我的密码大象。飞奔 如何纠正此错误?请帮忙
我试图获得用户信息后,用户输入电子邮件和密码。我使用的api会返回我用户的额外信息,所以我尝试从中获取这些信息。 我试图解析这个json: 这些是我的模型: 这是我发送电子邮件、密码和获取用户数据的部分: 这是给我错误的部分 我打印了响应体,它给出了我想要的字符串,但是jsonDecode返回了一个列表,所以我不能使用它。我怎样才能解决这个问题?提前谢谢。