Next.js架构专家 nextjs-architecture

此技能专注于提供 Next.js 框架的架构设计与优化解决方案。核心内容包括 App Router 路由模式、服务器组件实现、性能调优策略以及从旧版 Pages Router 的平滑迁移。适用于需要构建高性能、可扩展的全栈 Web 应用场景,帮助开发者遵循最佳实践,提升应用加载速度与开发效率。关键词:Next.js 架构,App Router 迁移,服务器组件,性能优化,全栈开发,React 框架。

前端开发 0 次安装 0 次浏览 更新于 2/28/2026

name: nextjs-architecture description: Next.js 架构专家。适用于设计 Next.js 应用程序、迁移到 App Router、实现服务器组件或优化 Next.js 性能。涵盖 App Router、服务器组件和最佳实践。 author: Joseph OBrien status: unpublished updated: ‘2025-12-23’ version: 1.0.1 tag: skill type: skill

Next.js 架构

此技能提供 Next.js 架构专业知识,包括 App Router、服务器组件、性能优化和迁移策略。

何时使用此技能

  • 设计 Next.js 应用程序架构时
  • 从 Pages Router 迁移到 App Router 时
  • 实现服务器组件时
  • 优化 Next.js 性能时
  • 制定 Next.js 架构决策时
  • 构建全栈 Next.js 应用程序时

此技能的作用

  1. 架构设计:设计 Next.js 应用程序结构
  2. App Router:实现 App Router 模式和路由
  3. 服务器组件:有效使用服务器组件
  4. 性能:为生产环境优化 Next.js
  5. 迁移:从 Pages Router 迁移到 App Router
  6. 最佳实践:应用 Next.js 最佳实践

如何使用

设计架构

为此 Next.js 应用程序设计架构
将此 Pages Router 应用迁移到 App Router

特定模式

为此功能实现服务器组件

架构模式

App Router 结构

app/
├── (auth)/
│   ├── login/page.tsx
│   └── register/page.tsx
├── dashboard/
│   ├── layout.tsx
│   ├── page.tsx
│   └── analytics/page.tsx
├── api/
│   └── users/route.ts
└── layout.tsx

服务器组件

模式:

  • 默认使用服务器组件
  • 使用 ‘use client’ 的客户端组件
  • 在服务器组件中直接访问数据库
  • 使用 Suspense 进行流式传输

性能

策略:

  • 对已知内容使用静态生成
  • 对频繁变化的内容使用增量静态再生
  • 对慢查询使用流式传输
  • 图像优化
  • 代码分割

示例

示例 1:App Router 迁移

输入:从 Pages Router 迁移到 App Router

输出

## Next.js 迁移:Pages Router → App Router

### 迁移步骤

**1. 转换布局**
```typescript
// 之前:pages/_app.tsx
export default function App({ Component, pageProps }) {
  return <Component {...pageProps} />;
}

// 之后:app/layout.tsx
export default function RootLayout({ children }) {
  return (
    <html>
      <body>{children}</body>
    </html>
  );
}

2. 转换页面

// 之前:pages/users/[id].tsx
export default function UserPage({ user }) {
  return <UserProfile user={user} />;
}

// 之后:app/users/[id]/page.tsx
export default async function UserPage({ params }) {
  const user = await getUser(params.id);
  return <UserProfile user={user} />;
}

## 最佳实践

### Next.js 架构

1. **服务器优先**:默认使用服务器组件
2. **按需客户端**:仅在必要时添加 'use client'
3. **尽可能静态**:在可行时生成静态页面
4. **流式处理慢查询**:对慢数据使用 Suspense
5. **优化图像**:使用 Next.js Image 组件

## 相关用例

- Next.js 架构设计
- App Router 迁移
- 服务器组件实现
- Next.js 性能优化
- 全栈 Next.js 开发