import React, { useState, useEffect } from 'react'; import { Form, Input, Button, Card, Typography, message, Space, Checkbox } from 'antd'; import { UserOutlined, LockOutlined, SafetyOutlined } from '@ant-design/icons'; import { useNavigate } from 'react-router-dom'; import { useAuth } from '../contexts/AuthContext'; const { Title, Text } = Typography; /** * 运营管理系统后台登录页面 * 路径:/admin */ const AdminLogin: React.FC = () => { const [loading, setLoading] = useState(false); const { login, isAuthenticated } = useAuth(); const navigate = useNavigate(); const [form] = Form.useForm(); // 如果已登录,重定向到管理后台 useEffect(() => { if (isAuthenticated) { navigate('/admin/dashboard', { replace: true }); } }, [isAuthenticated, navigate]); /** * 处理登录表单提交 * @param values - 表单值 */ const handleLogin = async (values: { username: string; password: string; remember?: boolean; }) => { setLoading(true); try { const success = await login(values.username, values.password); if (success) { navigate('/admin/dashboard', { replace: true }); } } catch (error) { // 错误已在AuthContext中处理 } finally { setLoading(false); } }; return (
{/* 系统标题 */}
运营管理系统 梦幻西游一站式运营管理后台
{/* 安全提示 */}
🔒 安全提示:请使用管理员账号登录
{/* 登录表单 */}
} placeholder="管理员账号" style={{ borderRadius: '10px', border: '1px solid #d9d9d9' }} /> } placeholder="密码" style={{ borderRadius: '10px', border: '1px solid #d9d9d9' }} />
{/* 底部信息 */}
系统版本:v1.0.0 | 帮助中心
); }; export default AdminLogin;