【问题标题】:How to convert a model class with a list of other model classes to json in dart?如何将具有其他模型类列表的模型类转换为 dart 中的 json?
【发布时间】:2021-06-21 14:23:41
【问题描述】:

我正在 Dart 中实现一个团队的模型类。每个实例都有一个唯一的 ID(来自 Firestore)、一个字符串名称和一个称为成员的用户列表。我正在尝试编写一个 toJson 函数,它将其转换为地图,因此我可以将其上传到 Firestore。这是我的课:

class Team extends Equatable {
  final String id;
  final String name;
  final List<CustomUser> members;

  Team(this.id, this.name, this.members);

  Team.fromJson(Map<String, dynamic> json)
  : id = json["id"],
    name = json["name"],
    members = json["members"];

  @override
  List<Object> get props => [id, name, members];
}

toJson 方法的当前状态:

Map<String, dynamic> toJson() => {"id": id, "name": name, "members": members};

我的问题是它将用户的整个实例转换为地图,但我只想要我的 json 中每个成员的 id,我该如何实现呢?

【问题讨论】:

    标签: json dictionary dart google-cloud-firestore model


    【解决方案1】:

    考虑到 CustomUser 具有 id 属性:

    Map<String, dynamic> toJson() => {"id": id, "name": name, "members": members.map((member) => member.id).toList()};
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-01
      • 2020-11-10
      • 2020-05-24
      • 2012-09-29
      • 1970-01-01
      相关资源
      最近更新 更多