修改圈子列表加载更多圈子信息

This commit is contained in:
CYH 2023-07-26 17:29:12 +08:00
parent f718bec18f
commit bf7d4dba8e
2 changed files with 21 additions and 6 deletions

View File

@ -17,15 +17,20 @@ class CircleLogic extends GetxController {
Map? statistics; Map? statistics;
int page = 1; int page = 1;
bool isMore = true;
@override @override
void onInit() async { void onInit() async {
super.onInit(); super.onInit();
var data = await DioManager.instance var data = await DioManager.instance
.get(url: Api.getCircleInterests, params: {"page": page}); .get(url: Api.getCircleInterests, params: {"page": page,'page_size':20});
var bean = BaseResponse<InterestsBean>.fromJson( var bean = BaseResponse<InterestsBean>.fromJson(
data, (data) => InterestsBean.fromJson(data)); data, (data) => InterestsBean.fromJson(data));
if(bean.data is InterestsBean&&bean.isSuccess()){ if(bean.data is InterestsBean&&bean.isSuccess()){
circle = bean.data!; circle = bean.data!;
if (circle.lists.length < 20) {
isMore = false;
}
update(); update();
} }
@ -33,13 +38,23 @@ class CircleLogic extends GetxController {
} }
loadMore() async { loadMore() async {
page = page++; if (!isMore) return;
page = page + 1;
var data = await DioManager.instance var data = await DioManager.instance
.get(url: Api.getCircleInterests, params: {"page": page}); .get(url: Api.getCircleInterests, params: {"page": page,'page_size':20});
var bean = BaseResponse<InterestsBean>.fromJson( var bean = BaseResponse<InterestsBean>.fromJson(
data, (data) => InterestsBean.fromJson(data)); data, (data) => InterestsBean.fromJson(data));
circle = bean.data!;
update(); InterestsBean newcircle = bean.data!;
if (newcircle.lists.isNotEmpty) {
if (newcircle.lists.length < 20) {
isMore = false;
}
circle.lists.addAll(newcircle.lists);
update();
}
} }
outCircle(String interest_id, bool isStatus) async { outCircle(String interest_id, bool isStatus) async {

View File

@ -33,7 +33,7 @@ class MyCircleLogic extends GetxController {
} }
loadMore() async { loadMore() async {
page = page++; page = page+1;
var data = await DioManager.instance var data = await DioManager.instance
.get(url: Api.getMyCircleInterests, params: {"page": page,'page_size':20}); .get(url: Api.getMyCircleInterests, params: {"page": page,'page_size':20});
var bean = BaseResponse<InterestsBean>.fromJson( var bean = BaseResponse<InterestsBean>.fromJson(