【发布时间】:2022-09-27 14:59:23
【问题描述】:
我对 Dropdown 的要求只有名称和 id,如果我没有将所有参数包含到文件 id 中,则不会解析对象。它抛出 gson 错误。 如何创建一个对象来处理 Flutter 中 API 响应中不需要的参数的响应。
import \'package:meta/meta.dart\';
import \'dart:convert\';
class Customer {
Customer({
@required this.data,
@required this.status,
});
List<Datum> data;
int status;
factory Customer.fromRawJson(String str) => Customer.fromJson(json.decode(str));
String toRawJson() => json.encode(toJson());
factory Customer.fromJson(Map<String, dynamic> json) => Customer(
data: json[\"data\"] == null ? null : List<Datum>.from(json[\"data\"].map((x) => Datum.fromJson(x))),
status: json[\"status\"] == null ? null : json[\"status\"],
);
Map<String, dynamic> toJson() => {
\"data\": data == null ? null : List<dynamic>.from(data.map((x) => x.toJson())),
\"status\": status == null ? null : status,
};
}
class Datum {
Datum({
@required this.id,
@required this.name,
@required this.contactPersonName,
@required this.mobileNo,
@required this.whatsAppNo,
@required this.user,
@required this.address,
@required this.gstNo,
@required this.creaditPeriod,
@required this.note,
@required this.created,
@required this.modified,
@required this.contactPersonEmail,
});
String id;
String name;
dynamic contactPersonName;
dynamic mobileNo;
dynamic whatsAppNo;
dynamic user;
dynamic address;
dynamic gstNo;
dynamic creaditPeriod;
dynamic note;
dynamic created;
dynamic modified;
dynamic contactPersonEmail;
factory Datum.fromRawJson(String str) => Datum.fromJson(json.decode(str));
String toRawJson() => json.encode(toJson());
factory Datum.fromJson(Map<String, dynamic> json) => Datum(
id: json[\"id\"] == null ? null : json[\"id\"],
name: json[\"name\"] == null ? null : json[\"name\"],
contactPersonName: json[\"contactPersonName\"],
mobileNo: json[\"mobileNo\"],
whatsAppNo: json[\"whatsAppNo\"],
user: json[\"user\"],
address: json[\"address\"],
gstNo: json[\"gstNo\"],
creaditPeriod: json[\"creaditPeriod\"],
note: json[\"note\"],
created: json[\"created\"],
modified: json[\"modified\"],
contactPersonEmail: json[\"contactPersonEmail\"],
);
Map<String, dynamic> toJson() => {
\"id\": id == null ? null : id,
\"name\": name == null ? null: name,
\"contactPersonName\": contactPersonName,
\"mobileNo\": mobileNo,
\"whatsAppNo\": whatsAppNo,
\"user\": user,
\"address\": address,
\"gstNo\": gstNo,
\"creaditPeriod\": creaditPeriod,
\"note\": note,
\"created\": created,
\"modified\": modified,
\"contactPersonEmail\": contactPersonEmail,
};
}
知道如何仅使用 id 和 name 参数创建小对象。