【问题标题】:How to retrieve data from a complicated json data model in Flutter如何在 Flutter 中从复杂的 json 数据模型中检索数据
【发布时间】:2022-01-31 15:11:29
【问题描述】:
Shippingmodel shippingmodelFromJson(String str) => Shippingmodel.fromJson(json.decode(str));

String shippingmodelToJson(Shippingmodel data) => json.encode(data.toJson());

class Shippingmodel {
  Shippingmodel({
    this.sellerShipping,
    this.result,
    this.shippingType,
    this.value,
    this.valueString,
  });

  Map<String, List<SellerShipping>> sellerShipping;
  bool result;
  String shippingType;
  int value;
  String valueString;

  factory Shippingmodel.fromJson(Map<String, dynamic> json) => Shippingmodel(
    sellerShipping: Map.from(json["seller_shipping"]).map((k, v) => MapEntry<String, List<SellerShipping>>(k, List<SellerShipping>.from(v.map((x) => SellerShipping.fromJson(x))))),
    result: json["result"],
    shippingType: json["shipping_type"],
    value: json["value"],
    valueString: json["value_string"],
  );

  Map<String, dynamic> toJson() => {
    "seller_shipping": Map.from(sellerShipping).map((k, v) => MapEntry<String, dynamic>(k, List<dynamic>.from(v.map((x) => x.toJson())))),
    "result": result,
    "shipping_type": shippingType,
    "value": value,
    "value_string": valueString,
  };
}

class SellerShipping {
  SellerShipping({
    this.code,
    this.name,
    this.price,
    this.deadline,
    this.erroMsg,
  });

  String code;
  String name;
  String price;
  String deadline;
  String erroMsg;

  factory SellerShipping.fromJson(Map<String, dynamic> json) => SellerShipping(
    code: json["code"],
    name: json["name"],
    price: json["price"],
    deadline: json["deadline"],
    erroMsg: json["erroMsg"],
  );

  Map<String, dynamic> toJson() => {
    "code": code,
    "name": name,
    "price": price,
    "deadline": deadline,
    "erroMsg": erroMsg,
  };
}

这是 json 数据模型。我对如何取回任何东西感到困惑,比如卖家航运的价格。我从存储库中调用它并传递响应。身体。任何帮助将不胜感激!

这是 json 数据模型。我对如何取回任何东西感到困惑,比如卖家航运的价格。我从存储库中调用它并传递响应。身体。任何帮助将不胜感激!

【问题讨论】:

    标签: json flutter android-studio dart hashmap


    【解决方案1】:

    对于任何被这个问题困扰的人,这篇文章的答案帮助了我,那个有颤振例子的人。

    Get the length of List that exists in Map<String,List<Object>> in Flutter

    【讨论】:

      【解决方案2】:

      我假设你想要这个。如果您还有其他意思,请在此答案中发表评论。我会尽力帮忙的。

      var json = jsonDecode(response.body);
      Shippingmodel _shippingmodel = Shippingmodel.fromJson(json);
      String _price = _shippingmodel.sellerShipping.price;
      

      【讨论】:

      • 是的,这就是我想要的,但我认为这不会完全做到。我以前试过这个,我没有这样的方法错误。没有为 SellerShipping 定义吸气剂价格。我不认为可以这么容易地从 Map> 检索值。
      • 将您的json 添加到问题中。我会努力解决的
      • 嘿,谢谢,但我已经找到了解决方案。我已经发布了链接。
      猜你喜欢
      • 2021-10-09
      • 1970-01-01
      • 2019-12-03
      • 2021-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多