import 'package:cs_resources/generated/assets.dart'; import 'package:flutter/cupertino.dart'; import 'package:plugin_platform/engine/toast/toast_engine.dart'; import 'package:riverpod_annotation/riverpod_annotation.dart'; import 'package:router/ext/auto_router_extensions.dart'; import 'package:shared/utils/log_utils.dart'; import 'package:widgets/load_state_layout.dart'; import 'package:widgets/widget_export.dart'; import 'package:auto_route/auto_route.dart'; import '../../../router/page/community_page_router.dart'; import 'my_posts_state.dart'; part 'my_posts_vm.g.dart'; @riverpod class MyPostsVm extends _$MyPostsVm { // late MyPostsRepository MyPostsRepositoryInstance; bool _needShowPlaceholder = true; //是否展示LoadingView // Refresh 控制器 final EasyRefreshController refreshController = EasyRefreshController( controlFinishRefresh: true, //允许刷新 controlFinishLoad: true, //允许加载 ); MyPostsState initState() { return MyPostsState( tabsList: [ { 'code': 'newsFeed', 'title': 'News Feed', 'publish_num': 0, }, { 'code': 'forSale', 'title': 'For Sale', 'publish_num': 28, }, { 'code': 'forRent', 'title': 'For Rent', 'publish_num': 35, }, ] ); } @override build(){ // 引入数据仓库 // MyPostsRepositoryInstance = ref.read(newsRepositoryProvider); final state = initState(); Log.d("--------------------------build---------------------"); return state; } // 设置当前的 tabsRouter 和 pageController handlerChangeTab(BuildContext context, int activeTabIdx) { Log.d("handlerChangeTab: $activeTabIdx"); final tabsRouter = AutoTabsRouter.of(context); tabsRouter.setActiveIndex(activeTabIdx); } }