I’m trying to migrate an old project to null-safety, and I’m struggling with loading data from assets,
Here is my code :
ClassroomModel _$ClassroomModelFromJson(Map<String, dynamic> json) {
return ClassroomModel(
title: json['title'] as String,
description: json['description'] as String,
coverImage: json['coverImage'] as String,
classroomRoutines: json['classroomRoutines'].toList()
?.map((e) => e == null
? null
: ClassroomRoutineModel.fromJson(e as Map<String, dynamic>))
?.toList(),
timeBetweenAsanas: json['timeBetweenAsanas'] as int,
isPredefined: json['isPredefined'] as bool,
);
}
Map<String, dynamic> _$ClassroomModelToJson(ClassroomModel instance) =>
<String, dynamic>{
'title': instance.title,
'description': instance.description,
'coverImage': instance.coverImage,
'timeBetweenAsanas': instance.timeBetweenAsanas,
'isPredefined': instance.isPredefined,
'classroomRoutines': instance.classroomRoutines!.map((e) => e.toJson()),
};
factory ClassroomModel.fromJSON(Map<String, dynamic> json) => _$ClassroomModelFromJson(json);
Map<String, dynamic> toJSON() => _$ClassroomModelToJson(this);
Future<List<ClassroomModel>> _loadClassroomsFromJSON() async {
final jsonString = await rootBundle.loadString(DataAssets.classroomsJson);
final List<dynamic> jsonDecoded = json.decode(jsonString);
return jsonDecoded.map((e) => ClassroomModel.fromJSON(e)).toList(); }
I got this Error : Expected a value of type List , but got one of type List
Thank you so much for your help