LabWork05 add dispose for searchController

This commit is contained in:
parent 59b3bb7008
commit 2523f8b0d1
2 changed files with 52 additions and 11 deletions

View File

@ -0,0 +1,33 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
part of 'characters_dto.dart';
// **************************************************************************
// JsonSerializableGenerator
// **************************************************************************
CharactersDto _$CharactersDtoFromJson(Map<String, dynamic> json) =>
CharactersDto(
data: (json['data'] as List<dynamic>?)
?.map((e) => CharacterDataDto.fromJson(e as Map<String, dynamic>))
.toList(),
);
CharacterDataDto _$CharacterDataDtoFromJson(Map<String, dynamic> json) =>
CharacterDataDto(
id: json['id'] as String?,
type: json['type'] as String?,
attributes: json['attributes'] == null
? null
: CharacterAttributesDataDto.fromJson(
json['attributes'] as Map<String, dynamic>),
);
CharacterAttributesDataDto _$CharacterAttributesDataDtoFromJson(
Map<String, dynamic> json) =>
CharacterAttributesDataDto(
name: json['name'] as String?,
born: json['born'] as String?,
died: json['died'] as String?,
image: json['image'] as String?,
);

View File

@ -84,6 +84,12 @@ class _BodyState extends State<Body> {
super.initState();
}
@override
void dispose() {
searchController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return Padding(
@ -108,17 +114,19 @@ class _BodyState extends State<Body> {
builder: (context, snapshot) => SingleChildScrollView(
child: snapshot.hasData
? Column(
mainAxisAlignment: MainAxisAlignment.center,
children: snapshot.data?.map((data) {
return _Comment.fromData(
data,
onAction: (String nickname, bool isLiked, bool isDisliked) =>
_showSnackBar(context, nickname, isLiked, isDisliked),
onTap: () => _navToDetails(context, data),
);
}).toList() ??
[],
)
mainAxisAlignment: MainAxisAlignment.center,
children: snapshot.data?.map((data) {
return _Comment.fromData(
data,
onAction: (String nickname, bool isLiked,
bool isDisliked) =>
_showSnackBar(context, nickname, isLiked,
isDisliked),
onTap: () => _navToDetails(context, data),
);
}).toList() ??
[],
)
: const CircularProgressIndicator(),
),
),