"use client"; import { useState, useEffect } from "react"; import { useRouter } from "next/navigation"; import Link from "next/link"; import { UserPlus } from "lucide-react"; import { apiRegister, apiMe } from "@/lib/api"; import { hasAuthCookieHint } from "@/lib/cookies"; export default function RegisterPage() { const router = useRouter(); const [username, setUsername] = useState(""); const [email, setEmail] = useState(""); const [password, setPassword] = useState(""); const [error, setError] = useState(""); const [loading, setLoading] = useState(false); // 已登录用户不必再注册,直接回首页 useEffect(() => { if (!hasAuthCookieHint()) return; apiMe() .then((res) => { if (res.user) router.replace("/"); }) .catch(() => {}); }, [router]); const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); setError(""); setLoading(true); try { const res = await apiRegister(username, email, password); if (res.id) { router.push("/login"); } else { setError(res.error || "注册失败"); } } finally { setLoading(false); } }; return (
加入姜十三,开始你的第一帖
已有账号? 去登录