Next.js
Next.js 是近些年最火的 React 框架,由 Vercel 开发和维护。核心特性
- 混合渲染:SSR、SSG、ISR 多种渲染模式
- 文件路由:基于文件系统的自动路由
- API Routes:内置 API 端点
- 优化性能:自动代码分割、图片优化
- TypeScript:原生 TypeScript 支持
- 零配置:开箱即用的最佳实践
快速开始
项目结构
App Router(Next.js 13+)
页面和布局
动态路由
数据获取
客户端组件
Loading 和 Error
API Routes
中间件
图片优化
字体优化
元数据
环境变量
配置文件
部署
Vercel(推荐)
Docker
静态导出
性能优化
- 代码分割:自动按路由分割
- 懒加载:动态导入组件
- 图片优化:next/image 自动优化
- 字体优化:next/font 优化字体加载
- 预取:Link 组件自动预取
- 缓存:细粒度的缓存控制
常用库集成
Tailwind CSS
Prisma ORM
NextAuth.js 认证
最佳实践
- 服务端组件优先:默认使用服务端组件
- 合理使用缓存:配置适当的缓存策略
- 优化图片:使用 next/image
- 代码组织:按功能模块组织代码
- TypeScript:使用类型安全
- 错误处理:使用 error.tsx 处理错误
- 加载状态:使用 loading.tsx 提升体验
常见问题
水合错误(Hydration Error)
- 确保服务端和客户端渲染一致
- 避免在服务端使用浏览器 API
性能优化
- 使用动态导入减少初始包大小
- 启用生产模式优化
