flutter - 如何将地图列表映射到我的自定义类列表中?
问题描述
我正在尝试将地图列表映射到我的自定义“地址”类的对象列表中。但是,如果我运行我的代码,我会收到此错误:
I/flutter (26434): type 'CastList<dynamic, List<Address>>' is not a subtype of type 'List<Address>'
这是我的源代码: listOfMaps 是我从数据库中提取的地图列表;
List<Address> _userAddresses;
_userAddresses = listOfMaps.map((address) {
return Address(
firstName: address["firstName"],
lastName: address["lastName"],
streetname: address["streetname"],
houseNumber: address["houseNumber"],
zipCode: address["zipCode"],
city: address["city"],
country: address["country"],
state: address["state"],
);
}).toList().cast<List<Address>>();
解决方案
我想你listOfMaps
可以List<dynamic>
这样做:
var _userAddresses = listOfMaps.map<Address>((m) => Address.fromJson(m)).toList();
在哪里:
Address.fromJson(Map<String, dynamic> jdata) { ... }
我希望它对你有所帮助。
推荐阅读
- python - 使用 Flask 无法正确显示图像
- javascript - 我的 for 循环只输出最后一个结果,我可以改变这个吗?
- python - 如何aiohttp请求发布文件列表python请求模块?
- firebase - Firebase 托管是否提供对 DNSSEC 的支持?
- rust - 我是在移动还是克隆这个字符串
- javascript - 如何在数据表中模拟鼠标单击?
- cesium - 样式 CZML 路径更细且有阴影到地面
- node.js - 静态文件 express/react 的相对路径
- excel - 将 '=IF(ISNUMBER(SEARCH')' 答案转换为数字而不是文本(使用自动求和)
- javascript - 检查笑话和酶中的按钮文本