Skip to content

Commit

Permalink
TV端搜索错误处理
Browse files Browse the repository at this point in the history
  • Loading branch information
xiaoyaocz committed Mar 13, 2024
1 parent 9f989de commit 5a3f0a9
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 25 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import 'package:simple_live_tv_app/widgets/app_scaffold.dart';
import 'package:simple_live_tv_app/widgets/button/highlight_button.dart';
import 'package:simple_live_tv_app/widgets/card/anchor_card.dart';
import 'package:simple_live_tv_app/widgets/status/app_empty_widget.dart';
import 'package:simple_live_tv_app/widgets/status/app_error_widget.dart';

class SearchAnchorPage extends GetView<SearchAnchorController> {
const SearchAnchorPage({super.key});
Expand Down Expand Up @@ -133,15 +134,25 @@ class SearchAnchorPage extends GetView<SearchAnchorController> {
),
Obx(
() => Visibility(
visible:
controller.list.isEmpty && !controller.loadding.value,
visible: controller.list.isEmpty &&
!controller.loadding.value &&
!controller.pageError.value,
child: AppEmptyWidget(
onRefresh: () {
controller.refreshData();
},
),
),
),
Obx(
() => Visibility(
visible: controller.pageError.value &&
!controller.loadding.value,
child: AppErrorWidget(
errorMsg: controller.errorMsg.value,
),
),
),
],
),
),
Expand Down
15 changes: 13 additions & 2 deletions simple_live_tv_app/lib/modules/search/room/search_room_page.dart
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ import 'package:simple_live_tv_app/widgets/app_scaffold.dart';
import 'package:simple_live_tv_app/widgets/button/highlight_button.dart';
import 'package:simple_live_tv_app/widgets/card/live_room_card.dart';
import 'package:simple_live_tv_app/widgets/status/app_empty_widget.dart';
import 'package:simple_live_tv_app/widgets/status/app_error_widget.dart';

class SearchRoomPage extends GetView<SearchRoomController> {
const SearchRoomPage({super.key});
Expand Down Expand Up @@ -133,15 +134,25 @@ class SearchRoomPage extends GetView<SearchRoomController> {
),
Obx(
() => Visibility(
visible:
controller.list.isEmpty && !controller.loadding.value,
visible: controller.list.isEmpty &&
!controller.loadding.value &&
!controller.pageError.value,
child: AppEmptyWidget(
onRefresh: () {
controller.refreshData();
},
),
),
),
Obx(
() => Visibility(
visible: controller.pageError.value &&
!controller.loadding.value,
child: AppErrorWidget(
errorMsg: controller.errorMsg.value,
),
),
),
],
),
),
Expand Down
39 changes: 18 additions & 21 deletions simple_live_tv_app/lib/widgets/status/app_error_widget.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:simple_live_tv_app/app/app_style.dart';
import 'package:lottie/lottie.dart';

Expand All @@ -11,27 +12,23 @@ class AppErrorWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Center(
child: GestureDetector(
onTap: () {
onRefresh?.call();
},
child: Padding(
padding: AppStyle.edgeInsetsA12,
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
LottieBuilder.asset(
'assets/lotties/error.json',
width: 260,
repeat: false,
),
Text(
"$errorMsg\r\n点击刷新",
textAlign: TextAlign.center,
style: const TextStyle(fontSize: 12, color: Colors.grey),
),
],
),
child: Padding(
padding: AppStyle.edgeInsetsA12,
child: Column(
mainAxisSize: MainAxisSize.min,
children: [
LottieBuilder.asset(
'assets/lotties/error.json',
width: 200.w,
repeat: false,
),
AppStyle.vGap24,
Text(
errorMsg.isEmpty ? "出错了,请稍后重试" : errorMsg,
textAlign: TextAlign.center,
style: AppStyle.textStyleWhite,
),
],
),
),
);
Expand Down

0 comments on commit 5a3f0a9

Please sign in to comment.