opt handle data

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2025-05-29 21:11:57 +08:00
parent c9450992d9
commit 9a63e23478
24 changed files with 147 additions and 116 deletions

View File

@@ -80,9 +80,11 @@ class FavPgcController
try {
final ctr = Get.find<FavPgcController>(tag: '$type$followStatus');
if (ctr.loadingState.value.isSuccess) {
ctr.loadingState.value.data!
.insertAll(0, updateList.map((item) => item..checked = null));
ctr.loadingState.refresh();
ctr.loadingState
..value
.data!
.insertAll(0, updateList.map((item) => item..checked = null))
..refresh();
ctr.allSelected.value = false;
}
} catch (e) {
@@ -104,8 +106,9 @@ class FavPgcController
try {
final ctr = Get.find<FavPgcController>(tag: '$type$followStatus');
if (ctr.loadingState.value.isSuccess) {
ctr.loadingState.value.data!.insert(0, item);
ctr.loadingState.refresh();
ctr.loadingState
..value.data?.insert(0, item)
..refresh();
ctr.allSelected.value = false;
}
} catch (e) {

View File

@@ -83,8 +83,9 @@ class _FavVideoPageState extends State<FavVideoPage>
},
);
if (res == true) {
_favController.loadingState.value.data!.removeAt(index);
_favController.loadingState.refresh();
_favController.loadingState
..value.data!.removeAt(index)
..refresh();
}
},
);

View File

@@ -1,4 +1,5 @@
import 'package:PiliPlus/common/widgets/scroll_physics.dart';
import 'package:PiliPlus/http/loading_state.dart';
import 'package:PiliPlus/models/common/fav_type.dart';
import 'package:PiliPlus/models/user/fav_folder.dart';
import 'package:PiliPlus/pages/fav/article/controller.dart';
@@ -59,12 +60,16 @@ class _FavPageState extends State<FavPage> with SingleTickerProviderStateMixin {
onPressed: () => Get.toNamed('/createFav')?.then(
(data) {
if (data != null) {
List<FavFolderItemData> list =
List<FavFolderItemData>? list =
_favController.loadingState.value.isSuccess
? _favController.loadingState.value.data!
: <FavFolderItemData>[];
list.insert(list.isNotEmpty ? 1 : 0, data);
_favController.loadingState.refresh();
? _favController.loadingState.value.data
: null;
if (list?.isNotEmpty == true) {
list!.insert(1, data);
_favController.loadingState.refresh();
} else {
_favController.loadingState.value = Success([data]);
}
}
},
),