blob: f11e48780f5c11539ca4a25460ae751b7162bcfc [file] [log] [blame] [edit]
import React from 'react';
import { BrowserRouter, Routes, Route, Navigate, useParams } from 'react-router-dom';
import UserProfile from './components/UserProfile';
import { FaHome, FaSearch, FaPlus, FaHeart, FaUser } from 'react-icons/fa';
function App() {
return (
<BrowserRouter>
<div className="min-h-screen bg-gray-50">
{/* 顶部导航栏 */}
<header className="bg-white shadow-sm sticky top-0 z-10">
<div className="max-w-6xl mx-auto px-4 py-3 flex justify-between items-center">
<div className="flex items-center">
<div className="text-2xl font-bold text-red-500 mr-2">小红书</div>
<div className="hidden md:block text-sm text-gray-500">发现美好生活</div>
</div>
<div className="flex space-x-4">
<a href="/user/11" className="text-gray-600 hover:text-red-500">
用户11
</a>
<a href="/user/2" className="text-gray-600 hover:text-red-500">
用户2
</a>
<a href="/user/3" className="text-gray-600 hover:text-red-500">
用户3
</a>
</div>
</div>
</header>
<main className="py-5">
<div className="max-w-6xl mx-auto">
<Routes>
{/* <Route path="/" element={<Navigate to="/user/11" replace />} /> */}
<Route path="/user/:userId" element={<UserProfileRoute />} />
</Routes>
</div>
</main>
{/* 小红书风格底部导航栏 */}
<div className="fixed bottom-0 left-0 right-0 bg-white border-t border-gray-200 py-2 z-10">
<div className="max-w-md mx-auto grid grid-cols-5">
<button className="flex flex-col items-center text-red-500">
<FaHome className="text-xl" />
<span className="text-xs mt-1">首页</span>
</button>
<button className="flex flex-col items-center text-gray-500">
<FaSearch className="text-xl" />
<span className="text-xs mt-1">发现</span>
</button>
<button className="flex flex-col items-center text-gray-500">
<div className="bg-red-500 rounded-full p-2 -mt-3">
<FaPlus className="text-white text-lg" />
</div>
<span className="text-xs mt-2">发布</span>
</button>
<button className="flex flex-col items-center text-gray-500">
<FaHeart className="text-xl" />
<span className="text-xs mt-1">消息</span>
</button>
<button className="flex flex-col items-center text-gray-500">
<FaUser className="text-xl" />
<span className="text-xs mt-1">我</span>
</button>
</div>
</div>
</div>
</BrowserRouter>
);
}
function UserProfileRoute() {
const { userId } = useParams();
return <UserProfile userId={parseInt(userId)} />;
}
export default App;