json - 如何从嵌套数组中调用对象

标签 json flutter dart

我希望使用公共(public) [api]对于个人项目。这是一个完整的 json 数据集的片段。

"Countries": [
    {
      "Country": "ALA Aland Islands",
      "CountryCode": "AX",
      "Slug": "ala-aland-islands",
      "NewConfirmed": 0,
      "TotalConfirmed": 0,
      "NewDeaths": 0,
      "TotalDeaths": 0,
      "NewRecovered": 0,
      "TotalRecovered": 0,
      "Date": "2020-04-05T06:37:00Z"
    },

我试图访问数组中的对象,我什至尝试了我在这里看到的一些答案,但它对我不起作用,要么我一直得到我的“正在加载数据......”屏幕,要么我得到一个没有错误的白屏。
我的代码片段如下

class CountriesData {
  String country;
  String countryCode;
  int confirmed;
  int deaths;
  int recovered;
  int active;
  DateTime date;

  CountriesData(this.country, this.countryCode, this.confirmed, this.deaths, 
      this.recovered, this.active, this.date);

  CountriesData.json(Map<String, dynamic> json) {
    country = json['Country'];
    countryCode = json['CountryCode'];
    confirmed = json['Confirmed'];
    deaths = json['Deaths'];
    recovered = json['Recovered'];
    active = json['Active'];
    date = DateTime.parse(json['Date']);
  }
}

最佳答案

您似乎从未解析过 JSON。要使用 JSON 中的值,您需要先转换为 Map。您必须导入 dart:convert库,然后您可以使用函数json.decode(jsonData) .这将返回一个可用于从中获取数据的 map 。

var jsonData = fetchJson();
var parsedJson = json.decode(jsonData);
var x = CountriesData.json(parsedJson);

关于json - 如何从嵌套数组中调用对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62013810/

相关文章:

ios - CocoaPods要求您的终端使用UTF-8编码

dart - flutter 中的脏状态错误

flutter - CheckboxListTile在Flutter上使用Bloc和Stream具有空值

dart - 有没有办法用 Flutter 打印控制台消息?

javascript - 如何从 JSON 文件加载特定数据作为颜色

flutter - 启用捏合和放大webview_flutter,在此处添加代码段[this.webView.getSettings()。setBuiltInZoomControls(true);]

jquery - Json和动态Key

flutter - Flutter的漏光效果

json - 如何将 JSON+Patch 与 BackboneJS 嵌套模型/集合一起使用?

javascript - 如何从数组中过滤掉非日语字符?