import React, { useState } from 'react'; import usersData from '../../user.json'; import { Eye, EyeOff, ShieldCheck, LogIn } from 'lucide-react'; const users = usersData as Record; const DEFAULT_PASSWORD = 'admin123'; export interface LoginUser { name: string; openId: string; } interface LoginPageProps { onLogin: (user: LoginUser) => void; } const LoginPage: React.FC = ({ onLogin }) => { const [username, setUsername] = useState(''); const [password, setPassword] = useState(''); const [showPassword, setShowPassword] = useState(false); const [error, setError] = useState(''); const [loading, setLoading] = useState(false); const handleSubmit = (e: React.FormEvent) => { e.preventDefault(); setError(''); if (!username.trim()) { setError('请输入用户名'); return; } if (!users[username]) { setError('用户名不存在'); return; } if (password !== DEFAULT_PASSWORD) { setError('密码错误'); return; } setLoading(true); setTimeout(() => { onLogin({ name: username, openId: users[username] }); setLoading(false); }, 600); }; return (
Q

QuantumTest

测试用例管理平台

{ setUsername(e.target.value); setError(''); }} autoFocus />
{ setPassword(e.target.value); setError(''); }} />
{error && (
{error}
)}

默认密码: admin123

); }; export default LoginPage;