// src/layouts/Auth.js import React from 'react'; import { Routes, Route, Navigate } from 'react-router-dom'; import { Box } from '@chakra-ui/react'; import { useAuth } from '../contexts/AuthContext'; import ErrorBoundary from '../components/ErrorBoundary'; // 导入认证相关页面 import SignInIllustration from '../views/Authentication/SignIn/SignInIllustration'; import SignUpIllustration from '../views/Authentication/SignUp/SignUpIllustration'; // 认证路由组件 - 已登录用户不能访问登录页 const AuthRoute = ({ children }) => { const { isAuthenticated, isLoading } = useAuth(); // 加载中不做跳转 if (isLoading) { return children; } // 已登录用户跳转到首页 if (isAuthenticated) { // 检查是否有记录的重定向路径 const redirectPath = localStorage.getItem('redirectPath'); if (redirectPath && redirectPath !== '/auth/signin' && redirectPath !== '/auth/sign-up') { localStorage.removeItem('redirectPath'); return ; } return ; } return children; }; export default function Auth() { return ( {/* 登录页面 */} } /> {/* 注册页面 */} } /> {/* 默认重定向到登录页 */} } /> } /> ); }