Skip to content

Next.js - 概述

Next.js 是一个流行的开源 React 框架,用于构建现代、高性能的 Web 应用程序。它由 Vercel 开发,提供了一种结构化的方法来构建 React 应用,并具有针对生产环境、开发者体验和 SEO 优化的功能。

它在标准 React 功能的基础上,提供了强大的开箱即用特性。主要功能包括:

  • 混合渲染策略(Hybrid Rendering Strategies): 在每页或每组件基础上无缝结合 Server-Side Rendering (SSR,服务器端渲染)、Static Site Generation (SSG,静态站点生成)、Incremental Static Regeneration (ISR,增量静态再生) 和 Client-Side Rendering (CSR,客户端渲染)。
  • App Router (推荐): 一个基于 React Server Components 构建的较新的路由和渲染架构,可提升性能、支持共享布局和协同数据获取。
  • Pages Router (经典): 原有的基于文件系统的路由,pages 目录中的文件映射到路由。
  • Fast Refresh: 在开发过程中对 React 组件的修改提供近乎即时的反馈。
  • 内置优化(Built-in Optimizations): 自动代码分割(每页仅加载必需的 JavaScript)、图像优化(next/image)、字体优化(next/font)和脚本优化(next/script)。
  • API 路由 / 路由处理器(API Routes / Route Handlers): 在 Next.js 应用内轻松创建无服务器 API 端点。
  • Middleware: 在请求完成之前运行代码,从而在边缘(Edge)上实现身份验证、重定向和头部修改等逻辑。
  • 文件系统路由(File-System Routing): 基于 app 或 pages 目录中的文件组织来实现简单直观的路由。
  • TypeScript 支持: 提供出色的开箱即用 TypeScript 支持,提升代码质量和可维护性。
  • 丰富的生态系统与部署(Rich Ecosystem & Deployment): 与 Node.js 和 React 生态系统良好集成。针对 Vercel、Netlify 或自托管的 Node.js 环境等平台进行了优化部署。
  • 静态导出(Static Exports): 能够导出站点的完全静态 HTML 版本,适用于托管在任何静态 Web 服务器上。

Next.js 旨在通过提供合理的默认配置、强大的抽象以及对性能和可扩展性的关注,来简化复杂 React 应用程序的开发。