【问题标题】:fromJSON() method parses null data in flutterfromJSON() 方法在flutter中解析空数据
【发布时间】:2021-01-18 06:48:32
【问题描述】:

我已经创建了一个这样的模型:

class SalesRepResponse {
  bool errors;
  List<Data> data;
  int statusCode;

  SalesRepResponse({this.errors, this.data, this.statusCode});

  SalesRepResponse.fromJson(Map<String, dynamic> json) {
    errors = json['errors'];
    if (json['data'] != null) {
      data = new List<Data>();
      json['data'].forEach((v) {
        data.add(new Data.fromJson(v));
      });
    }
    statusCode = json['status_code'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['errors'] = this.errors;
    if (this.data != null) {
      data['data'] = this.data.map((v) => v.toJson()).toList();
    }
    data['status_code'] = this.statusCode;
    return data;
  }
}

class Data {
  int id;
  String displayName;

  Data({this.id, this.displayName});

  Data.fromJson(Map<String, dynamic> json) {
    id = json['id'];
    displayName = json['display_name'];
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = new Map<String, dynamic>();
    data['id'] = this.id;
    data['display_name'] = this.displayName;
    return data;
  }
}

我也从 API 获得了相同的响应,我像这样解析数据:

var result = SalesRepResponse.fromJson(json.decode(response1.body));

但它将 SalesRepResponse/Data 类中的所有值存储为 null。

请有人帮我解决这个问题。

提前致谢。

【问题讨论】:

    标签: json flutter dart


    【解决方案1】:

    你必须像这样在你的json中指定数据

    var result = SalesRepResponse.fromJson(json.decode(response1.body['data/etc']));
    

    意味着您必须通过检查您的 json 响应来指定具有 SalesRepResponse 数据的数据

    【讨论】:

    • 我们不能将字符串作为参数传递给数组。
    猜你喜欢
    • 2019-10-10
    • 1970-01-01
    • 2021-01-03
    • 2019-05-18
    • 2021-05-10
    • 2017-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多