feat: add new assets, optimize list layout and重构个人中心页面
1. 新增fork/star/close等多个业务图标并配置到静态资源路径 2. 新增静态资源CDN配置常量 3. 优化帖子列表加载更多UI,无更多数据时显示提示文本 4. 重构我的页面布局,对齐Vue端实现,替换图标为CDN资源 5. 统一退出登录弹窗为公共组件,调整代码格式与缩进
This commit is contained in:
@@ -47,6 +47,7 @@ class _MyInteractPageState extends State<MyInteractPage> {
|
||||
backgroundColor: const Color(0xFFF5F8FA),
|
||||
appBar: AppBar(
|
||||
backgroundColor: const Color(0xFFF5F8FA),
|
||||
surfaceTintColor: Colors.transparent, // 滚动时不叠加半透明色,背景保持不变
|
||||
elevation: 0,
|
||||
title: const Text(
|
||||
'我的互动',
|
||||
@@ -127,13 +128,14 @@ class _UpdateTab extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return PostListBody(
|
||||
fetchPage: ({required pageIndex, required pageSize, required prevPageId}) =>
|
||||
ClassApi.instance.getUserClassPost(
|
||||
queryType: 0,
|
||||
pageIndex: pageIndex,
|
||||
pageSize: pageSize,
|
||||
prevPageId: prevPageId,
|
||||
),
|
||||
fetchPage:
|
||||
({required pageIndex, required pageSize, required prevPageId}) =>
|
||||
ClassApi.instance.getUserClassPost(
|
||||
queryType: 0,
|
||||
pageIndex: pageIndex,
|
||||
pageSize: pageSize,
|
||||
prevPageId: prevPageId,
|
||||
),
|
||||
emptyText: '暂无动态',
|
||||
onTapPost: onTapPost,
|
||||
);
|
||||
@@ -147,12 +149,13 @@ class _LikeTab extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return PostListBody(
|
||||
fetchPage: ({required pageIndex, required pageSize, required prevPageId}) =>
|
||||
ClassApi.instance.getMyLikePage(
|
||||
pageIndex: pageIndex,
|
||||
pageSize: pageSize,
|
||||
prevPageId: prevPageId,
|
||||
),
|
||||
fetchPage:
|
||||
({required pageIndex, required pageSize, required prevPageId}) =>
|
||||
ClassApi.instance.getMyLikePage(
|
||||
pageIndex: pageIndex,
|
||||
pageSize: pageSize,
|
||||
prevPageId: prevPageId,
|
||||
),
|
||||
emptyText: '暂无点赞',
|
||||
removeOnUnlike: true,
|
||||
onTapPost: onTapPost,
|
||||
@@ -167,14 +170,15 @@ class _CommentTab extends StatelessWidget {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return PostListBody(
|
||||
fetchPage: ({required pageIndex, required pageSize, required prevPageId}) =>
|
||||
ClassApi.instance.getMyCommentPage(
|
||||
pageIndex: pageIndex,
|
||||
pageSize: pageSize,
|
||||
prevPageId: prevPageId,
|
||||
),
|
||||
fetchPage:
|
||||
({required pageIndex, required pageSize, required prevPageId}) =>
|
||||
ClassApi.instance.getMyCommentPage(
|
||||
pageIndex: pageIndex,
|
||||
pageSize: pageSize,
|
||||
prevPageId: prevPageId,
|
||||
),
|
||||
emptyText: '暂无留言',
|
||||
onTapPost: onTapPost,
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,7 +34,8 @@ class PostListBody extends ConsumerStatefulWidget {
|
||||
required int pageIndex,
|
||||
required int pageSize,
|
||||
required int prevPageId,
|
||||
}) fetchPage;
|
||||
})
|
||||
fetchPage;
|
||||
|
||||
final String emptyText;
|
||||
final bool removeOnUnlike;
|
||||
@@ -233,16 +234,30 @@ class _PostListBodyState extends ConsumerState<PostListBody> {
|
||||
controller: _scrollController,
|
||||
physics: const AlwaysScrollableScrollPhysics(),
|
||||
padding: EdgeInsets.symmetric(horizontal: 14.w),
|
||||
itemCount: _posts.length + (_hasMore ? 1 : 0),
|
||||
itemCount: _posts.length + 1,
|
||||
itemBuilder: (context, index) {
|
||||
if (index >= _posts.length) {
|
||||
if (_hasMore) {
|
||||
return Padding(
|
||||
padding: EdgeInsets.symmetric(vertical: 16.h),
|
||||
child: const Center(
|
||||
child: SizedBox(
|
||||
width: 22,
|
||||
height: 22,
|
||||
child: CircularProgressIndicator(strokeWidth: 2.5),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
return Padding(
|
||||
padding: EdgeInsets.symmetric(vertical: 16.h),
|
||||
child: const Center(
|
||||
child: SizedBox(
|
||||
width: 22,
|
||||
height: 22,
|
||||
child: CircularProgressIndicator(strokeWidth: 2.5),
|
||||
padding: EdgeInsets.symmetric(vertical: 20.h),
|
||||
child: Center(
|
||||
child: Text(
|
||||
'没有更多了',
|
||||
style: TextStyle(
|
||||
fontSize: 12.sp,
|
||||
color: const Color(0xFFB4C2E0),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
@@ -262,4 +277,4 @@ class _PostListBodyState extends ConsumerState<PostListBody> {
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user