【发布时间】:2021-09-12 08:17:22
【问题描述】:
这是我从 json 响应转换的地方,我只想获取一些响应并将其显示在我的应用程序上,
Future <List<PNLDATA>>_getPNLCONTENT() async {
var biller = "PNLpre";
var idPel = ContentPNLController.text;
var params = ContentPNLNumController.text.replaceAll(".", "");
var data = await ContentPre(Bill, ID, prm);
var jsonData = json.decode(data);
var jsonProduk = jsonData["VALUE"];
List< PNLDATA > pnldata = [];
for (var data in jsonProduk) {
pnldata.add(
new PNLDATA(
data['dt_name'], data['dt_trs'], data['dt_GTag'], data['dt_GAd'], data["dt_Gsum"])
);
}
print(pnldata);
return pnldata;
}
错误信息
[VERBOSE-2:ui_dart_state.cc(199)] Unhandled Exception: type '_InternalLinkedHashMap<String, dynamic>' is not a subtype of type 'Iterable<dynamic>'
Json 响应:
flutter: {
"RC": "00",
"CMD": "PNLContent",
"VALUE": {
"dt_status": "SUCCESS",
"dt_name": "Caramel",
"dt_trs": "0000000001",
"dt_GTag": "00002",
"dt_GAd": "Macchiato",
"dt_Gsum": "22500",
"dt_Urs" : "22212",
},
}
PNLDATA 类
class PNLDATA {
final String dt_name;
final String dt_trs;
final String dt_GTag;
final String dt_GAd;
final String dt_Gsum;
PNLDATA(this. dt_name, this. dt_trs, this.dt_GTag,this.dt_dt_GAd,this.dt_Gsum);
}
【问题讨论】:
-
你能提供你的json响应吗?
-
等我更新Qs
-
还有你的
PNLDDATA类和你的pnldata方法 -
你不能像你正在做的那样通过 for 循环迭代
MapjsonProduk -
哦,真的。您的
data是Map类型。所以你不能为此使用 for 循环