fix: after login

Signed-off-by: bggRGjQaUbCoE <githubaccount56556@proton.me>
This commit is contained in:
bggRGjQaUbCoE
2024-12-24 13:39:56 +08:00
parent c23f15b195
commit 36ee59c7da
5 changed files with 13 additions and 13 deletions

View File

@@ -59,7 +59,7 @@ class _DynamicsPageState extends State<DynamicsPage>
}), }),
), ),
onPressed: () { onPressed: () {
if (GStorage.userInfo.get('userInfoCache') != null) { if (GStorage.isLogin) {
showModalBottomSheet( showModalBottomSheet(
context: context, context: context,
useSafeArea: true, useSafeArea: true,

View File

@@ -97,9 +97,9 @@ class _UpPanelState extends State<UpPanel> {
upItemBuild(UpItem(face: '', uname: '全部动态', mid: -1), 0), upItemBuild(UpItem(face: '', uname: '全部动态', mid: -1), 0),
upItemBuild( upItemBuild(
UpItem( UpItem(
face: userInfo.face, face: userInfo?.face,
uname: '', uname: '',
mid: userInfo.mid, mid: userInfo?.mid,
), ),
1), 1),
for (int i = 0; i < upList.length; i++) ...[ for (int i = 0; i < upList.length; i++) ...[

View File

@@ -59,7 +59,7 @@ class HomeController extends GetxController with GetTickerProviderStateMixin {
} }
// 更新登录状态 // 更新登录状态
void updateLoginStatus(val) async { Future updateLoginStatus(val) async {
userInfo = await userInfoCache.get('userInfoCache'); userInfo = await userInfoCache.get('userInfoCache');
userLogin.value = val ?? false; userLogin.value = val ?? false;
if (val) return; if (val) return;

View File

@@ -1,6 +1,7 @@
import 'dart:convert'; import 'dart:convert';
import 'dart:math'; import 'dart:math';
import 'package:PiliPalaX/utils/extension.dart';
import 'package:crypto/crypto.dart'; import 'package:crypto/crypto.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
@@ -14,20 +15,18 @@ class LoginUtils {
static Future refreshLoginStatus(bool status) async { static Future refreshLoginStatus(bool status) async {
try { try {
// 更改我的页面登录状态 // 更改我的页面登录状态
await Get.find<MineController>().resetUserInfo(); if (status.not) {
await Get.find<MineController>().resetUserInfo();
}
// 更改主页登录状态 // 更改主页登录状态
HomeController homeCtr = Get.find<HomeController>(); Get.find<HomeController>().updateLoginStatus(status);
homeCtr.updateLoginStatus(status);
MineController mineCtr = Get.find<MineController>(); Get.find<MineController>().userLogin.value = status;
mineCtr.userLogin.value = status;
DynamicsController dynamicsCtr = Get.find<DynamicsController>(); Get.find<DynamicsController>().userLogin.value = status;
dynamicsCtr.userLogin.value = status;
MediaController mediaCtr = Get.find<MediaController>(); Get.find<MediaController>().userLogin.value = status;
mediaCtr.userLogin.value = status;
} catch (err) { } catch (err) {
// SmartDialog.showToast('refreshLoginStatus error: ${err.toString()}'); // SmartDialog.showToast('refreshLoginStatus error: ${err.toString()}');
debugPrint('refreshLoginStatus error: $err'); debugPrint('refreshLoginStatus error: $err');

View File

@@ -78,6 +78,7 @@ class Utils {
'${GStorage.setting.get(SettingBoxKey.defaultRcmdType, defaultValue: 'web')}' '${GStorage.setting.get(SettingBoxKey.defaultRcmdType, defaultValue: 'web')}'
'端」推荐'); '端」推荐');
await GStorage.userInfo.put('userInfoCache', result['data']); await GStorage.userInfo.put('userInfoCache', result['data']);
try { try {
final HomeController homeCtr = Get.find<HomeController>(); final HomeController homeCtr = Get.find<HomeController>();
homeCtr.updateLoginStatus(true); homeCtr.updateLoginStatus(true);