我有一个如下类,需要从FireStore读/写。
class Customer{
String fname;
String fname;
Map<String, dynamic> toJson() => {
'fname': fname,
'lname': lname
};
static Customer fromDocument(DocumentSnapshot doc){
Customer customer = Customer();
customer.fname = doc.data['fname'];
customer.lname = doc.data['lname'];
return customer;
}
}
如何避免编写代码来序列化(toJson)/反序列化(fromDocument)?对于亚马逊,如果我必须在Java中执行此操作,则可以使用Gson库进行序列化和反序列化。
答案 0 :(得分:1)
您可以使用json_serializable软件包,该软件包会生成用于序列化/反序列化的代码。有了它,您的代码将如下所示:
@JsonSerializable()
class Customer {
Customer({this.fname, this.lname});
final String fname;
final String lname;
Map<String, dynamic> toJson() => _$CustomerToJson(this);
static Customer fromJson(Map<String, dynamic> json) =>
_$CustomerFromJson(json);
}