My Dto 的结构就像 -
@freezed
abstract class MessageDto with _$MessageDto{
factory MessageDto({
String message,
@JsonKey(name: 'message_type') String messageType,
@JsonKey(name: 'sender_id') String senderId,
@JsonKey(name: 'sent_at') Timestamp sendAt,
}) = _MessageDto;
factory MessageDto.fromFirestore(DocumentSnapshot doc) {
Map<String, dynamic> json = doc.data;
return MessageDto.fromJson(json);
}
factory MessageDto.fromJson(Map<String, dynamic> json) => _$MessageDtoFromJson(json);
}
Run Code Online (Sandbox Code Playgroud)
未处理的异常:类型“Timestamp”不是类型转换中类型“String”的子类型
我们正在开发一种软件,该软件将在 Flutter 中写入大量内存并占用大量内存。它还将支持撤消和重做功能。目前我们在不可变数据结构方面的经验为零。在研究flutter的过程中,我想到了freezeed包,不可变数据模型的代码生成器,这促使我去理解不可变数据集。但是使用不可变数据模型会带来各种挑战,例如 -