fix: 用户页面动态panel布局、收藏列表数据为空异常、收藏夹数据更新逻辑
This commit is contained in:
@ -67,7 +67,7 @@ class MyApp extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
navigatorObservers: [
|
navigatorObservers: [
|
||||||
VideoDetailPage.routeObserver,
|
VideoDetailPage.routeObserver,
|
||||||
SearchPage.routeObserver
|
SearchPage.routeObserver,
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
}),
|
}),
|
||||||
|
|||||||
@ -17,7 +17,7 @@ class FavDetailData {
|
|||||||
? json['medias']
|
? json['medias']
|
||||||
.map<FavDetailItemData>((e) => FavDetailItemData.fromJson(e))
|
.map<FavDetailItemData>((e) => FavDetailItemData.fromJson(e))
|
||||||
.toList()
|
.toList()
|
||||||
: [FavDetailItemData()];
|
: [];
|
||||||
hasMore = json['has_more'];
|
hasMore = json['has_more'];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -3,6 +3,7 @@ import 'package:get/get.dart';
|
|||||||
import 'package:hive/hive.dart';
|
import 'package:hive/hive.dart';
|
||||||
import 'package:pilipala/pages/dynamics/index.dart';
|
import 'package:pilipala/pages/dynamics/index.dart';
|
||||||
import 'package:pilipala/pages/home/index.dart';
|
import 'package:pilipala/pages/home/index.dart';
|
||||||
|
import 'package:pilipala/pages/media/index.dart';
|
||||||
import 'package:pilipala/utils/feed_back.dart';
|
import 'package:pilipala/utils/feed_back.dart';
|
||||||
import 'package:pilipala/utils/storage.dart';
|
import 'package:pilipala/utils/storage.dart';
|
||||||
import './controller.dart';
|
import './controller.dart';
|
||||||
@ -18,6 +19,7 @@ class _MainAppState extends State<MainApp> with SingleTickerProviderStateMixin {
|
|||||||
final MainController _mainController = Get.put(MainController());
|
final MainController _mainController = Get.put(MainController());
|
||||||
final HomeController _homeController = Get.put(HomeController());
|
final HomeController _homeController = Get.put(HomeController());
|
||||||
final DynamicsController _dynamicController = Get.put(DynamicsController());
|
final DynamicsController _dynamicController = Get.put(DynamicsController());
|
||||||
|
final MediaController _mediaController = Get.put(MediaController());
|
||||||
|
|
||||||
PageController? _pageController;
|
PageController? _pageController;
|
||||||
|
|
||||||
@ -87,6 +89,10 @@ class _MainAppState extends State<MainApp> with SingleTickerProviderStateMixin {
|
|||||||
} else {
|
} else {
|
||||||
_dynamicController.flag = false;
|
_dynamicController.flag = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (currentPage is MediaPage) {
|
||||||
|
_mediaController.queryFavFolder();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|||||||
@ -5,11 +5,21 @@ import 'package:pilipala/models/user/fav_folder.dart';
|
|||||||
import 'package:pilipala/pages/media/index.dart';
|
import 'package:pilipala/pages/media/index.dart';
|
||||||
import 'package:pilipala/utils/utils.dart';
|
import 'package:pilipala/utils/utils.dart';
|
||||||
|
|
||||||
class MediaPage extends StatelessWidget {
|
class MediaPage extends StatefulWidget {
|
||||||
const MediaPage({super.key});
|
const MediaPage({super.key});
|
||||||
|
|
||||||
|
@override
|
||||||
|
State<MediaPage> createState() => _MediaPageState();
|
||||||
|
}
|
||||||
|
|
||||||
|
class _MediaPageState extends State<MediaPage>
|
||||||
|
with AutomaticKeepAliveClientMixin {
|
||||||
|
@override
|
||||||
|
bool get wantKeepAlive => true;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
|
super.build(context);
|
||||||
final MediaController mediaController = Get.put(MediaController());
|
final MediaController mediaController = Get.put(MediaController());
|
||||||
Color primary = Theme.of(context).colorScheme.primary;
|
Color primary = Theme.of(context).colorScheme.primary;
|
||||||
return Scaffold(
|
return Scaffold(
|
||||||
|
|||||||
@ -24,8 +24,8 @@ class _MemberDynamicPanelState extends State<MemberDynamicPanel>
|
|||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Expanded(
|
super.build(context);
|
||||||
child: LoadingMoreList<DynamicItemModel>(
|
return LoadingMoreList<DynamicItemModel>(
|
||||||
ListConfig<DynamicItemModel>(
|
ListConfig<DynamicItemModel>(
|
||||||
sourceList: source,
|
sourceList: source,
|
||||||
itemBuilder: (BuildContext c, DynamicItemModel item, int index) {
|
itemBuilder: (BuildContext c, DynamicItemModel item, int index) {
|
||||||
@ -33,7 +33,6 @@ class _MemberDynamicPanelState extends State<MemberDynamicPanel>
|
|||||||
},
|
},
|
||||||
indicatorBuilder: _buildIndicator,
|
indicatorBuilder: _buildIndicator,
|
||||||
),
|
),
|
||||||
),
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user