// src/app/character-center/page.tsx // 角色中心页面 - 仅登录用户可访问 import { getServerSession } from 'next-auth'; import { authOptions } from '@/lib/api/auth'; import { redirect } from 'next/navigation'; import CharacterCenterClient from './CharacterCenterClient'; import { Card, CardContent, CardFooter, CardHeader, CardTitle } from '@/components/ui/card'; import { Button } from '@/components/ui/button'; // 角色类型定义 interface Character { id: string; name: string; skinId: string; created: string; level: number; description?: string; isActive: boolean; } export default async function CharacterCenter() { // 检查用户登录状态 const session = await getServerSession(authOptions); if (!session) { // 未登录用户重定向到登录页面 redirect('/'); } // 安全地获取用户信息 const userName = session.user?.name || '玩家'; // 模拟的角色数据 const characters: Character[] = []; // 渲染客户端组件 return ; } // 角色卡片组件 function CharacterCard({ character }: { character: any }) { return ( {/* 角色状态标签 */} 活跃 {/* 角色皮肤预览 */} {character.name} 等级 {character.level} • 创建于 {character.created} 角色进度 编辑 切换到 ); } // 添加角色卡片组件 function AddCharacterCard() { return ( ➕ 添加新角色 创建一个新的游戏角色 ); } // 统计卡片组件 function StatCard({ title, value, icon }: { title: string; value: string; icon: string }) { return ( {icon} {title} {value} ); }
创建一个新的游戏角色