Next.js #
Next.js 是一个基于 React 的全栈 Web 开发框架,由 Vercel 公司开发和维护。本教程将带你从零开始,循序渐进地掌握 Next.js 的所有核心知识。
1.1 教程特点 #
| 特点 |
说明 |
| 循序渐进 |
从基础到高级,逐步深入 |
| 实战导向 |
每个知识点都有代码示例 |
| 最新版本 |
基于 Next.js 15 编写 |
| 完整覆盖 |
涵盖所有核心功能 |
1.2 学习路线 #
基础入门 → 路由系统 → 页面布局 → 数据获取 → 渲染策略 → 样式处理 → API路由 → 优化 → 部署 → 最佳实践
二、教程目录 #
第一部分:基础入门 #
| 章节 |
内容 |
链接 |
| Next.js简介 |
发展历史、核心特性、应用场景 |
开始学习 |
| 环境搭建 |
Node.js安装、项目创建、开发工具 |
开始学习 |
| 第一个应用 |
页面创建、组件开发、样式处理 |
开始学习 |
| 项目结构 |
目录结构、文件组织、命名规范 |
开始学习 |
第二部分:路由系统 #
| 章节 |
内容 |
链接 |
| 路由基础 |
文件系统路由、Link组件、编程式导航 |
开始学习 |
| 动态路由 |
动态段、捕获所有路由、generateStaticParams |
开始学习 |
| 路由组与并行路由 |
路由组织、并行路由、拦截路由 |
开始学习 |
| 中间件 |
请求拦截、认证保护、重定向 |
开始学习 |
第三部分:页面与布局 #
| 章节 |
内容 |
链接 |
| 页面与布局基础 |
page.tsx、layout.tsx、嵌套布局 |
开始学习 |
| 模板与默认组件 |
template.tsx、default.tsx |
开始学习 |
| 元数据与SEO |
metadata、Open Graph、结构化数据 |
开始学习 |
| 导航与链接 |
Link组件、useRouter、路由预加载 |
开始学习 |
| 错误处理 |
error.tsx、not-found.tsx、loading.tsx |
开始学习 |
第四部分:数据获取 #
| 章节 |
内容 |
链接 |
| 数据获取基础 |
fetch API、缓存控制、请求去重 |
开始学习 |
| Server Components数据获取 |
异步组件、并行获取、流式渲染 |
开始学习 |
| Client Components数据获取 |
SWR、React Query、表单处理 |
开始学习 |
| 缓存策略 |
请求缓存、全路由缓存、路由缓存 |
开始学习 |
| 数据变更与重新验证 |
Server Actions、revalidatePath、revalidateTag |
开始学习 |
第五部分:渲染策略 #
| 章节 |
内容 |
链接 |
| 渲染概述 |
SSR、SSG、ISR、CSR、RSC |
开始学习 |
| 服务端渲染SSR |
动态渲染、流式渲染、服务端组件 |
开始学习 |
| 静态生成SSG |
静态页面、generateStaticParams、静态导出 |
开始学习 |
| 增量静态再生ISR |
基于时间验证、按需验证、缓存标签 |
开始学习 |
| 客户端渲染CSR |
客户端组件、动态导入、交互功能 |
开始学习 |
第六部分:样式处理 #
| 章节 |
内容 |
链接 |
| CSS模块 |
局部作用域、组合、变量 |
开始学习 |
| Tailwind CSS |
原子化CSS、响应式设计、暗色模式 |
开始学习 |
| CSS-in-JS |
styled-components、emotion、stitches |
开始学习 |
| Sass与全局样式 |
变量、混合、全局样式管理 |
开始学习 |
第七部分:API路由 #
| 章节 |
内容 |
链接 |
| API路由基础 |
route.ts、HTTP方法、请求响应 |
开始学习 |
| Route Handlers |
流式响应、文件处理、Edge Runtime |
开始学习 |
| Server Actions |
表单处理、数据变更、乐观更新 |
开始学习 |
第八部分:优化 #
| 章节 |
内容 |
链接 |
| 图片优化 |
Image组件、自动优化、懒加载 |
开始学习 |
| 字体优化 |
next/font、Google Fonts、本地字体 |
开始学习 |
| 脚本优化 |
Script组件、加载策略、第三方脚本 |
开始学习 |
| 懒加载 |
动态导入、Suspense、骨架屏 |
开始学习 |
第九部分:部署与扩展 #
| 章节 |
内容 |
链接 |
| 部署到Vercel |
Git集成、环境变量、域名配置 |
开始学习 |
| Docker部署 |
Dockerfile、多阶段构建、Docker Compose |
开始学习 |
| 环境变量 |
.env文件、公开变量、服务端变量 |
开始学习 |
| 性能监控 |
Web Vitals、日志、错误追踪 |
开始学习 |
第十部分:最佳实践 #
| 章节 |
内容 |
链接 |
| 项目架构 |
目录结构、代码组织、模块划分 |
开始学习 |
| TypeScript集成 |
类型定义、类型安全、最佳实践 |
开始学习 |
| 测试策略 |
单元测试、集成测试、E2E测试 |
开始学习 |
三、学习建议 #
3.1 前置知识 #
| 知识 |
要求 |
| HTML/CSS |
基础 |
| JavaScript |
熟练 |
| React |
熟悉 |
| TypeScript |
基础 |
3.2 学习方法 #
- 按顺序学习:教程设计循序渐进,建议按顺序学习
- 动手实践:每学完一章,动手实践代码示例
- 项目驱动:尝试用 Next.js 构建一个小项目
- 查阅文档:遇到问题时查阅官方文档
3.3 学习时间 #
| 部分 |
预计时间 |
| 基础入门 |
1-2天 |
| 路由系统 |
2-3天 |
| 页面与布局 |
2-3天 |
| 数据获取 |
3-4天 |
| 渲染策略 |
3-4天 |
| 样式处理 |
2天 |
| API路由 |
2-3天 |
| 优化 |
2天 |
| 部署与扩展 |
2天 |
| 最佳实践 |
2天 |
四、开始学习 #
准备好了吗?让我们从 Next.js简介 开始你的学习之旅!
npx create-next-app@latest my-app
cd my-app
npm run dev
祝你学习愉快!