While we serialize or de-serialize the model using jsonSerializable in Flutter it converts the DateTime as String
class Task {
final DateTime dateTime;
final String taskName;
Task({
required this.dateTime,
required this.taskName
}):
}
Instead of converting as string it should convert as TimeStamp
class Task {
@TimeStampConvertor
final DateTime dateTime;
final String taskName;
Task({
required this.dateTime,
required this.taskName
}):
}
class TimestampConverter implements JsonConverter<DateTime, Timestamp> {
const TimestampConverter();
@override
DateTime fromJson(Timestamp timestamp) {
return timestamp.toDate();
}
@override
Timestamp toJson(DateTime date) => Timestamp.fromDate(date);
}