'use client' import { useState } from 'react' import Link from 'next/link' import { useRouter } from 'next/navigation' export default function LoginPage() { const [formData, setFormData] = useState({ email: '', password: '' }) const [isLoading, setIsLoading] = useState(false) const [error, setError] = useState('') const router = useRouter() const handleSubmit = async (e: React.FormEvent) => { e.preventDefault() setIsLoading(true) setError('') try { const response = await fetch('/api/auth/login', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify(formData), }) const data = await response.json() if (response.ok) { localStorage.setItem('token', data.token) localStorage.setItem('user', JSON.stringify(data.user)) // 触发用户更新事件 window.dispatchEvent(new Event('user-updated')) router.push('/') } else { setError(data.message || '登录失败') } } catch (error) { setError('网络错误,请稍后重试') } finally { setIsLoading(false) } } const handleChange = (e: React.ChangeEvent) => { setFormData({ ...formData, [e.target.name]: e.target.value }) } return (

登录您的账户

或者{' '} 创建新账户

{error && (
{error}
)}
{/*

测试账号:admin@pcdiy.com,密码:admin123

*/}
) }