如何 select 只是 json 中的一项
how to select just one item from json in flutter
您好,我想在我的应用程序中显示 SPX 价格并拥有此 json API 我需要 select 仅来自此 API 的 SPX 数据我该怎么做那个??
[{"ask":"28.47500","bid":"27.47500","name":"USDUAH","time":"1616772920.000"},
{"ask":"3972.06000","bid":"3971.16000","name":"SPX","time":"1617047940.000"},
{"ask":"0.71965","bid":"0.71916","name":"AUDCHF","time":"1617076421.403"}]]
这可能有效
List data = parseResponse(response.body)
var spx ;
data.forEach((element) {
if (element["name"]=="SPX"){
spx =element; // access the spx object to get other data
}
});
static List<Trade> parseResponse(String responseBody) { // for converting array of objects to object list
final parsed = json.decode(responseBody).cast<Map<dynamic, dynamic>>();
return parsed.map<Trade>((json) => Trade.fromJson(json)).toList();
}```
你可以这样做:
final lst = [{"ask":"28.47500","bid":"27.47500","name":"USDUAH","time":"1616772920.000"},
{"ask":"3972.06000","bid":"3971.16000","name":"SPX","time":"1617047940.000"},
{"ask":"0.71965","bid":"0.71916","name":"AUDCHF","time":"1617076421.403"}];
final res = lst.where((element) => element['name'] == 'SPX').toList();
查看 DartPad 上的完整示例 here
您好,我想在我的应用程序中显示 SPX 价格并拥有此 json API 我需要 select 仅来自此 API 的 SPX 数据我该怎么做那个??
[{"ask":"28.47500","bid":"27.47500","name":"USDUAH","time":"1616772920.000"},
{"ask":"3972.06000","bid":"3971.16000","name":"SPX","time":"1617047940.000"},
{"ask":"0.71965","bid":"0.71916","name":"AUDCHF","time":"1617076421.403"}]]
这可能有效
List data = parseResponse(response.body)
var spx ;
data.forEach((element) {
if (element["name"]=="SPX"){
spx =element; // access the spx object to get other data
}
});
static List<Trade> parseResponse(String responseBody) { // for converting array of objects to object list
final parsed = json.decode(responseBody).cast<Map<dynamic, dynamic>>();
return parsed.map<Trade>((json) => Trade.fromJson(json)).toList();
}```
你可以这样做:
final lst = [{"ask":"28.47500","bid":"27.47500","name":"USDUAH","time":"1616772920.000"},
{"ask":"3972.06000","bid":"3971.16000","name":"SPX","time":"1617047940.000"},
{"ask":"0.71965","bid":"0.71916","name":"AUDCHF","time":"1617076421.403"}];
final res = lst.where((element) => element['name'] == 'SPX').toList();
查看 DartPad 上的完整示例 here