Next.js 静态导出
Next.js 是一个功能强大的 React 框架,支持多种渲染策略,包括静态生成(Static Generation)、服务器端渲染(Server-Side Rendering)和客户端渲染(Client-Side Rendering)。其中,静态导出是一种将 Next.js 应用预渲染为静态 HTML 文件的技术,适合部署到任何静态托管服务(如 Vercel、Netlify、GitHub Pages 等)。
什么是静态导出?
静态导出是指将 Next.js 应用中的所有页面预渲染为静态 HTML 文件。这些文件可以直接部署到静态托管服务上,无需运行 Node.js 服务器。静态导出的页面在构建时生成,因此加载速度非常快,适合内容不频繁变化的网站。
备注
静态导出与静态生成(Static Generation)不同。静态生成是在请求时生成 HTML 文件,而静态导出是在构建时生成所有 HTML 文件。
如何使用静态导出?
要启用静态导出功能,需要在 next.config.js
中配置 output
选项为 export
。以下是一个简单的配置示例:
// next.config.js
module.exports = {
output: 'export',
};
配置完成后,运行 next build
命令时,Next.js 会将所有页面预渲染为静态 HTML 文件,并生成一个 out
目录,其中包含所有静态文件。
示例:静态导出一个简单的页面
假设我们有一个简单的 Next.js 页面 pages/index.js