简介

简介

欢迎来到 Next.js 文档!

什么是 Next.js?

Next.js 是一个用于构建全栈 Web 应用的 React 框架。您可以使用 React 组件构建用户界面,并通过 Next.js 获得额外的功能与优化。

在底层,Next.js 还抽象并自动配置了 React 所需的工具链,例如打包 (bundling)、编译 (compiling) 等。这让您能专注于构建应用,而无需花费时间在配置上。

无论您是独立开发者还是团队一员,Next.js 都能帮助您构建交互式、动态且快速的 React 应用。

主要特性

Next.js 的主要功能包括:

特性描述
路由 (Routing)基于文件系统的路由系统,构建在服务端组件 (Server Components) 之上,支持布局 (layouts)、嵌套路由 (nested routing)、加载状态 (loading states)、错误处理 (error handling) 等功能。
渲染 (Rendering)支持客户端组件 (Client Components) 和服务端组件 (Server Components) 的客户端渲染 (CSR) 与服务端渲染 (SSR)。通过 Next.js 进一步优化为服务端静态渲染 (Static Rendering) 和动态渲染 (Dynamic Rendering)。支持 Edge 和 Node.js 运行时的流式渲染 (Streaming)。
数据获取 (Data Fetching)简化服务端组件中的数据获取,支持 async/await 语法,扩展了 fetch API 以实现请求记忆化 (memoization)、数据缓存 (caching) 和重新验证 (revalidation)。
样式 (Styling)支持多种样式方案,包括 CSS Modules、Tailwind CSS 和 CSS-in-JS
优化 (Optimizations)提供图片 (Image)、字体 (Fonts) 和脚本 (Scripts) 优化,以提升应用的核心 Web 指标 (Core Web Vitals) 和用户体验。
TypeScript增强的 TypeScript 支持,包括更完善的类型检查和高效编译,以及自定义 TypeScript 插件和类型检查器。

如何使用本文档

在屏幕左侧,您会看到文档导航栏。文档页面按从基础到高级的顺序组织,方便您按步骤构建应用。当然,您也可以按任意顺序阅读,或直接跳转到与您用例相关的页面。

在屏幕右侧,您会看到当前页面的目录,便于快速跳转至特定章节。如需快速查找页面,可使用顶部的搜索栏或搜索快捷键(Ctrl+KCmd+K)。

要开始使用,请查看 安装指南

App Router 与 Pages Router

Next.js 提供两种路由模式:App Router 和 Pages Router。App Router 是新一代路由系统,支持 React 的最新特性,如服务端组件 (Server Components) 和流式渲染 (Streaming)。Pages Router 是 Next.js 原有的路由系统,用于构建服务端渲染的 React 应用,目前仍为旧版 Next.js 应用提供支持。

在侧边栏顶部,您会看到一个下拉菜单,用于切换 App RouterPages Router 的功能文档。由于两种路由有各自独有的特性,请注意当前选中的标签页。

页面顶部的面包屑导航也会显示您当前查看的是 App Router 还是 Pages Router 的文档。

预备知识

虽然本文档设计为对新手友好,但我们仍需要设定一些基础知识基准,以便专注于 Next.js 功能的讲解。在引入新概念时,我们会提供相关文档的链接。

为了更好地理解文档内容,建议您具备 HTML、CSS 和 React 的基础知识。如需复习 React,请查看我们的 Next.js 基础课程,该课程将带您了解核心概念。

无障碍访问

为了在使用屏幕阅读器时获得最佳的无障碍体验,我们推荐使用 Firefox + NVDA 或 Safari + VoiceOver 组合。

加入社区

如果您对 Next.js 有任何疑问,欢迎随时通过 GitHub DiscussionsDiscordTwitterReddit 联系我们的社区。

On this page