修改用户登陆认证流程

This commit is contained in:
张成
2025-11-16 23:55:49 +08:00
parent 5f8fb9b1b3
commit abbfc27479
12 changed files with 229 additions and 99 deletions

View File

@@ -1,10 +1,10 @@
import React, { useState, useEffect, useCallback } from "react";
import { View } from "@tarojs/components";
import Taro from "@tarojs/taro";
import { check_login_status } from "@/services/loginService";
import { check_login_status, silentLogin } from "@/services/loginService";
import { useUserActions } from "@/store/userStore";
import GuideBar from "@/components/GuideBar";
import { withAuth, GeneralNavbar } from "@/components";
import { GeneralNavbar } from "@/components";
import HomeNavbar from "@/components/HomeNavbar";
import ListPageContent from "./components/ListPageContent";
import MessagePageContent from "./components/MessagePageContent";
@@ -27,16 +27,32 @@ const MainPage: React.FC = () => {
const { fetchUserInfo } = useUserActions();
// 初始化:检查登录状态并获取用户信息
// 初始化:尝试静默登录并获取用户信息
useEffect(() => {
const init = async () => {
// 先检查是否已登录
const login_status = check_login_status();
if (login_status) {
// 已登录,获取用户信息
try {
await fetchUserInfo();
} catch (error) {
console.error('获取用户信息失败:', error);
}
} else {
// 未登录,尝试静默登录
try {
const loginResult = await silentLogin();
if (loginResult.success) {
// 静默登录成功,获取用户信息
fetchUserInfo().catch((error) => {
console.error('获取用户信息失败:', error);
});
}
} catch (error) {
console.error('静默登录失败:', error);
// 静默登录失败不影响使用
}
}
};
init();
@@ -213,5 +229,5 @@ const MainPage: React.FC = () => {
);
};
export default withAuth(MainPage);
export default MainPage;