import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; import 'package:get/get.dart'; import 'package:pilipala/http/dynamics.dart'; import 'package:pilipala/models/dynamics/result.dart'; import 'package:pilipala/models/dynamics/up.dart'; class UpDynamicsController extends GetxController { UpDynamicsController(this.upInfo); UpItem upInfo; RxList dynamicsList = [].obs; RxBool isLoadingDynamic = false.obs; String? offset = ''; int page = 1; Future queryFollowDynamic({type = 'init'}) async { if (type == 'init') { dynamicsList.clear(); } // 下拉刷新数据渲染时会触发onLoad if (type == 'onLoad' && page == 1) { return; } isLoadingDynamic.value = true; var res = await DynamicsHttp.followDynamic( page: type == 'init' ? 1 : page, type: 'all', offset: offset, mid: upInfo.mid, ); isLoadingDynamic.value = false; if (res['status']) { if (type == 'onLoad' && res['data'].items.isEmpty) { SmartDialog.showToast('没有更多了'); return; } if (type == 'init') { dynamicsList.value = res['data'].items; } else { dynamicsList.addAll(res['data'].items); } offset = res['data'].offset; page++; } return res; } }