![](/img/trans.png)
[英]type '_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'FutureOr<List<dynamic>>'
[英]type '_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'FutureOr<List<dynamic>>
我正在尝试获取 JSON 响应,但出现此错误:
type '_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'FutureOr<List<dynamic>>
这是我的代码:
Future<List> loadFriendParties (String id) async {
//TODO change userId
var request = await EndPoints.getUserInterest(id);
print(request.body);
print(request.statusCode);
if (request.statusCode == 200) {
return jsonDecode(request.body)['data'] ?? [];
}
return [];
}
和
FutureBuilder(
future: myFriendPartiesLoader = loadFriendParties(element['id']),
builder: (context, snapshot) {
print('snapshot: ${snapshot.data}');
print('snapshot2: ${snapshot}');
上面的印刷品给了我这个:
snapshot: null
snapshot2: AsyncSnapshot<List<dynamic>>(ConnectionState.done, null, type '_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'FutureOr<List<dynamic>>'
这是我的 JSON:
{
"data": {
"intrested": [
{
"event_name": "Karaoke",
"city": "Warszawa
"description": "text",
},
{
"event_name": "PAPUGOWE",
"city": "Toruń",
"description": "text",
}
],
"participate": [],
"be_today": [
{
"name": "Ryba Piła",
"city": "Gdańsk",
"description": "text",
},
{
"name": "Moon Club",
"city": "Toruń",
"description": "text.",
}
]
}
}
在这种情况下如何正确处理来自 JSON 的响应?
Future<List> loadFriendParties (String id) async {
//TODO change userId
var request = await EndPoints.getUserInterest(id);
print(request.body);
print(request.statusCode);
if (request.statusCode == 200) {
Map<String, dynamic> json = jsonDecode(request.body)['data'];
//then return what you want here
}
return [];
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.