更新路由守卫

Change-Id: Iddd1d006202a03e8a97e3a90d64d9a43c5d2cb78
diff --git a/Merge/front/src/pages/LoginPage/LoginPage.js b/Merge/front/src/pages/LoginPage/LoginPage.js
index 31453a4..bdd75d0 100644
--- a/Merge/front/src/pages/LoginPage/LoginPage.js
+++ b/Merge/front/src/pages/LoginPage/LoginPage.js
@@ -1,4 +1,5 @@
 // src/pages/LoginPage/LoginPage.jsx
+
 import React, { useState, useEffect } from 'react'
 import { useNavigate, Link } from 'react-router-dom'
 import { Input, Checkbox, Modal, Alert } from 'antd'
@@ -12,7 +13,8 @@
   getRememberedLoginInfo,
   saveRememberedLoginInfo,
   saveAuthInfo,
-  isLoggedIn
+  isLoggedIn,
+  clearAuthInfo           // ← 新增
 } from '../../utils/auth'
 import { hashPassword } from '../../utils/crypto'
 import './LoginPage.css'
@@ -22,6 +24,11 @@
 export default function LoginPage() {
   const navigate = useNavigate()
 
+  // —— 登录页加载时先清除旧的认证信息 —— 
+  useEffect(() => {
+    clearAuthInfo(/* clearRemembered= */ false)
+  }, [])
+
   const [formData, setFormData] = useState({
     email: '',
     password: ''
@@ -59,15 +66,14 @@
   useEffect(() => {
     if (isLoggedIn()) {
       console.log('用户已登录')
-      // 如果要自动跳转可以在这里:
-      // navigate('/home', { replace: true })
+      // 如果想自动跳转: navigate('/home', { replace: true })
     }
     const { email, password, rememberMe } = getRememberedLoginInfo()
     if (rememberMe && email) {
       setFormData({ email, password })
       setRememberMe(true)
     }
-  }, [navigate])
+  }, [])
 
   const handleEmailChange = (e) => {
     setFormData(f => ({ ...f, email: e.target.value }))
@@ -120,13 +126,13 @@
         saveAuthInfo(result.token, result.user, rememberMe)
         saveRememberedLoginInfo(formData.email, formData.password, rememberMe)
         setTimeout(() => {
-        // 根据不同角色跳转
+          const uid = result.user.id
           switch (result.user.role) {
             case 'admin':
-              navigate('/admin', { replace: true })
+              navigate(`/admin/${uid}`, { replace: true })
               break
             case 'superadmin':
-              navigate('/superadmin', { replace: true })
+              navigate(`/superadmin/${uid}/users`, { replace: true })
               break
             default:
               navigate('/home', { replace: true })