opt: view invalid user space

Closes #414

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-03-10 15:03:55 +08:00
parent b75fda3596
commit 2ce79d21b5
7 changed files with 89 additions and 45 deletions

View File

@@ -4,6 +4,7 @@ import 'package:PiliPlus/http/loading_state.dart';
import 'package:PiliPlus/http/member.dart';
import 'package:PiliPlus/http/video.dart';
import 'package:PiliPlus/models/space/data.dart';
import 'package:PiliPlus/models/space/item.dart';
import 'package:PiliPlus/models/space/tab2.dart';
import 'package:PiliPlus/pages/common/common_controller.dart';
import 'package:PiliPlus/utils/storage.dart';
@@ -29,7 +30,7 @@ class MemberControllerNew extends CommonController
RxBool isFollow = false.obs;
RxInt relation = 1.obs;
TabController? tabController;
late final List<Tab> tabs;
late List<Tab> tabs;
List<Tab2>? tab2;
RxInt contributeInitialIndex = 0.obs;
double? top;
@@ -112,6 +113,29 @@ class MemberControllerNew extends CommonController
return true;
}
@override
bool handleError(String? errMsg) {
tab2 = [
Tab2(title: '动态', param: 'dynamic'),
Tab2(
title: '投稿',
param: 'contribute',
items: [Item(title: '视频', param: 'video')],
),
Tab2(title: '收藏', param: 'favorite'),
Tab2(title: '追番', param: 'bangumi'),
];
tabs = tab2!.map((item) => Tab(text: item.title)).toList();
tabController = TabController(
vsync: this,
length: tabs.length,
);
scrollRatio.value = 1;
username = errMsg;
loadingState.value = LoadingState.success(null);
return true;
}
@override
Future<LoadingState> customGetData() => MemberHttp.space(mid: mid);