Bladeren bron

feat(layout): 添加全局布局和中间件

- 新增 RootLayout组件,用于全局布局
- 添加中间件,用于设置请求头- 集成 Ant Design组件库
- 设置网站元数据,如标题、描述和图标
nahida 8 maanden geleden
bovenliggende
commit
94354aee9a
3 gewijzigde bestanden met toevoegingen van 49 en 0 verwijderingen
  1. 17 0
      middleware.ts
  2. BIN
      public/assets/logo.png
  3. 32 0
      src/app/layout.tsx

+ 17 - 0
middleware.ts

@@ -0,0 +1,17 @@
+import { NextResponse } from "next/server"
+import type { NextRequest } from "next/server"
+
+export function middleware(request: NextRequest) {
+  const requestHeaders = new Headers(request.headers)
+  requestHeaders.set("x-pathname", request.nextUrl.pathname)
+
+  return NextResponse.next({
+    request: {
+      headers: requestHeaders,
+    },
+  })
+}
+
+export const config = {
+  matcher: ["/((?!api|_next/static|_next/image|favicon.ico).*)"],
+}

BIN
public/assets/logo.png


+ 32 - 0
src/app/layout.tsx

@@ -0,0 +1,32 @@
+import type { Metadata } from "next";
+import "./globals.css";
+import {AntdRegistry} from "@ant-design/nextjs-registry";
+import '@ant-design/v5-patch-for-react-19';
+import HeaderBlock from "@/components/headerBlock";
+import FooterBlock from "@/components/footerBlock";
+
+export const metadata: Metadata = {
+  title: "中科盛阳信息技术有限公司",
+  description: "中科盛阳信息技术有限公司官网",
+  icons:{
+    icon:'/favicon.ico'
+  }
+};
+
+export default function RootLayout({
+  children,
+}: Readonly<{
+  children: React.ReactNode;
+}>) {
+  return (
+    <html lang="en">
+    <body>
+    <AntdRegistry>
+      <HeaderBlock/>
+      {children}
+      <FooterBlock/>
+    </AntdRegistry>
+    </body>
+    </html>
+  );
+}