| // app/layout.tsx |
| |
| import type { Metadata } from 'next'; |
| import { Avatar } from 'primereact/avatar'; |
| // 页面跳转 |
| import Link from 'next/link'; |
| // PrimeReact 依赖 |
| import { PrimeReactProvider } from 'primereact/api'; |
| import 'primeicons/primeicons.css'; |
| import 'primereact/resources/themes/lara-light-teal/theme.css'; // 主题 |
| // 全局样式 |
| import './globals.scss'; |
| |
| //设置标题 |
| export const metadata: Metadata = { |
| title: 'MCPT', |
| description: 'MCPT resource Platform', |
| }; |
| |
| // 页首工具栏 |
| export default function RootLayout({ children }: { children: React.ReactNode }) { |
| return ( |
| <html lang="zh"> |
| <body> |
| <PrimeReactProvider> |
| <div className="container"> |
| <header className="toolbar"> |
| <div className="logo-name"> |
| <Link href="/" className="no-underline"> |
| <img src="/logo.png" alt="Logo" className="logo" /> |
| </Link> |
| |
| <span className="name">MCPT</span> |
| </div> |
| <div className="tools"> |
| <Link href="/resource/hot-resource" className="no-underline"> |
| <div className="tool-item"> |
| <i className="pi pi-trophy" /> |
| <span>热门</span> |
| </div> |
| </Link> |
| <Link href="/search" className="no-underline"> |
| <div className="tool-item"> |
| <i className="pi pi-search" /> |
| <span>搜索</span> |
| </div> |
| </Link> |
| |
| <Link href="/community" className="no-underline"> |
| <div className="tool-item"> |
| <i className="pi pi-users" /> |
| <span>社区</span> |
| </div> |
| </Link> |
| |
| <Link href="/resource/classification" className="no-underline"> |
| <div className="tool-item"> |
| <i className="pi pi-tags" /> |
| <span>分类</span> |
| </div> |
| </Link> |
| |
| <Link href="/notification" className="no-underline"> |
| <div className="tool-item"> |
| <i className="pi pi-bell" /> |
| <span>通知</span> |
| </div> |
| </Link> |
| <Link href="/user" className="no-underline"> |
| <Avatar image="/images/avatar/asiyajavayant.png" size="large" shape="circle" /> |
| </Link> |
| </div> |
| </header> |
| <main className="mainContent">{children}</main> |
| </div> |
| </PrimeReactProvider> |
| </body> |
| </html> |
| ); |
| } |