我正在从互联网上提取数据,但我只能在屏幕上显示1条数据,我得到了有大小的问题,我如何解决这两个错误?
@override
Widget build(BuildContext context) {
return FutureBuilder<List<PostModel>?>(
future: _postService.fetchPostsItems(),
builder: (context, snapshot) {
if (snapshot.hasData) {
final result = snapshot.data!;
return ListView.builder(
shrinkWrap: true,
itemCount: result.length,
itemBuilder: ((context, index) {
return CustomComponents(
title: result[index].authorName ?? '',
subTitle: result[index].createdAt ?? '',
profileImageUrl: result[index].authorProfileImage ?? '',
postImageUrl: result[index].media ?? '',
description: result[index].description ?? '',
likeCount: result[index].likeCount ?? 0,
dislikeCount: result[index].disLikeCount ?? 0,
commentCount: result[index].comments?.length ?? 0,
commentTitle: result[index].comments?[index].authorName ?? '',
commentDescription: result[index].description ?? '',
commentImageUrl: result[index].authorProfileImage ?? '',
);
}),
);
}
return const Center(child: CircularProgressIndicator());
},
);
}
发布于 2022-11-22 15:59:37
result[index].comments?[index].
这可能会引起问题。您的ListView与结果一样长,但这并不意味着结果中的注释与结果长度一样长。
https://stackoverflow.com/questions/74540238
复制相似问题