opt: 排行榜切换tab数据缓存

This commit is contained in:
guozhigq
2024-03-24 13:42:40 +08:00
committed by orz12
parent 94d5f00ff4
commit 4560c91fb8

View File

@@ -24,15 +24,20 @@ class ZonePage extends StatefulWidget {
State<ZonePage> createState() => _ZonePageState(); State<ZonePage> createState() => _ZonePageState();
} }
class _ZonePageState extends State<ZonePage> { class _ZonePageState extends State<ZonePage>
final ZoneController _zoneController = Get.put(ZoneController()); with AutomaticKeepAliveClientMixin {
late ZoneController _zoneController;
List videoList = []; List videoList = [];
Future? _futureBuilderFuture; Future? _futureBuilderFuture;
late ScrollController scrollController; late ScrollController scrollController;
@override
bool get wantKeepAlive => true;
@override @override
void initState() { void initState() {
super.initState(); super.initState();
_zoneController = Get.put(ZoneController(), tag: widget.rid.toString());
_futureBuilderFuture = _zoneController.queryRankFeed('init', widget.rid); _futureBuilderFuture = _zoneController.queryRankFeed('init', widget.rid);
scrollController = _zoneController.scrollController; scrollController = _zoneController.scrollController;
StreamController<bool> mainStream = StreamController<bool> mainStream =
@@ -70,6 +75,7 @@ class _ZonePageState extends State<ZonePage> {
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
super.build(context);
return RefreshIndicator( return RefreshIndicator(
onRefresh: () async { onRefresh: () async {
return await _zoneController.onRefresh(); return await _zoneController.onRefresh();