我的皮肤库
管理和分享你的Minecraft皮肤
{skin.name}
上传于 {skin.createdAt}
还没有皮肤
上传你的第一个皮肤,开始你的Minecraft皮肤收藏之旅
// src/app/dashboard/page.tsx 'use client'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'; //import { Separator } from '@/components/ui/separator'; import Link from 'next/link'; import { useState } from 'react'; import Canvas2DSkinPreview from '@/components/skins/Canvas2DSkinPreview'; import SkinGrid from '@/components/skins/SkinGrid'; export default function Dashboard() { // 由于这是客户端组件,我们不能在这里使用getServerSession // 在实际应用中,你应该使用useSession钩子或在服务器端获取会话 // 这里我们模拟一个已登录的状态 const session = { user: { id: 'test_user_1', name: '测试玩家', email: 'test@test.com' } }; // 安全地获取用户ID const userId = session?.user?.id || 'unknown'; // 状态管理 const [searchTerm, setSearchTerm] = useState(''); const [activeCategory, setActiveCategory] = useState('all'); // 实际应用中这里会从API获取用户皮肤数据 const mockSkins = [ { id: '1', name: 'Steve皮肤', createdAt: '2023-05-01' }, { id: '2', name: 'Alex皮肤', createdAt: '2023-05-15' }, ]; // 根据搜索词和分类过滤皮肤 const filteredSkins = mockSkins.filter(skin => skin.name.toLowerCase().includes(searchTerm.toLowerCase()) ); return (
管理和分享你的Minecraft皮肤
上传于 {skin.createdAt}
上传你的第一个皮肤,开始你的Minecraft皮肤收藏之旅