[英]How to show Data coming from API in Grouped List View
我有來自 api 的數據,如下所示:
{
"status": true,
"error": "",
"message": "Record Found.",
"data": {
"2021-Apr-19": [
{
"img_url": "https://www.rezzap.com/uploads/profile-photo/BWPOFCyHMFm_OgzvCxRwS5dBJTS6wCgy.jpg",
"person": "CooperMac",
"message": " supported your activity drawing."
}
],
"2021-Mar-30": [
{
"img_url": "https://www.rezzap.com/uploads/profile-photo/BWPOFCyHMFm_OgzvCxRwS5dBJTS6wCgy.jpg",
"person": "CooperMac",
"message": " commented on your activity Test Activity 12-11-2020."
},
{
"img_url": "https://www.rezzap.com/uploads/profile-photo/BWPOFCyHMFm_OgzvCxRwS5dBJTS6wCgy.jpg",
"person": "CooperMac",
"message": " supported your activity ."
},
],
}
}
同樣,我制作了 Model 像這樣 - :
class Support {
Support({
this.data,
});
Map<String, List<Datum>> data;
factory Support.fromJson(Map<String, dynamic> json) => Support(
data: Map.from(json["data"]).map((k, v) =>
MapEntry<String, List<Datum>>(
k, List<Datum>.from(v.map((x) => Datum.fromJson(x))))),
);
}
class Datum {
Datum({
this.imgUrl,
this.person,
this.message,
});
String imgUrl;
String person;
String message;
factory Datum.fromJson(Map<String, dynamic> json) => Datum(
imgUrl: json["img_url"],
person: json["person"],
message: json["message"],
);
}
這是回應但我不知道如何在 model 中解析它,我需要在這里更正,所以如果有人可以幫忙
Future<Support> getSupportActivityData() async {
final response = await _helper.get(supportedActivityUrl);
var responseData = response["data"];
var list = responseData as Map<String, dynamic>;
return Support.fromJson(list);
}
我也嘗試將返回類型設為“Future<Map<String, List>>”等,但它總是向我顯示類型轉換錯誤
我想獲取該數據並將其顯示為List ,那么如何在此分組列表中顯示它,因為它要求鍵為 Header 和值作為其行?
嘗試使用此代碼轉換您首先要列出的 map
這可能發生在后端響應中,或者您可以將其從 flutter 轉換為
var h=here_the_map_data.forEach((k,v) => here_The_list_variable.add(here_the_map_data(k,v)));
我用響應來的地方替換了我的 function -:
Future<Support> getSupportActivityData() async {
final response = await _helper.get(supportedActivityUrl);
return Support.fromJson(response);
}
我已經在 model 中解析了 ["data"] 並且我在我的倉庫中再次解析數據(響應即將到來)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.