当前位置: 首页 > 文档资料 > Next.js 中文文档 >

使用

优质
小牛编辑
145浏览
2023-12-01

通常开发 Next.js 应用你将会运行:

next build
next export

next export命令默认不需要任何配置,将会自动生成默认exportPathMap生成pages目录下的路由你页面。

如果你想动态配置路由,可以在next.config.js中添加异步函数exportPathMap

// next.config.js
module.exports = {
  exportPathMap: async function (defaultPathMap) {
    return {
      '/': { page: '/' },
      '/about': { page: '/about' },
      '/readme.md': { page: '/readme' },
      '/p/hello-nextjs': { page: '/post', query: { title: 'hello-nextjs' } },
      '/p/learn-nextjs': { page: '/post', query: { title: 'learn-nextjs' } },
      '/p/deploy-nextjs': { page: '/post', query: { title: 'deploy-nextjs' } }
    }
  }
}

注意:如果 path 的结尾是目录名,则将导出/dir-name/index.html,但是如果结尾有扩展名,将会导出对应的文件,如上/readme.md。如果你使用.html以外的扩展名解析文件时,你需要设置 header 的Content-Type头为"text/html".

输入下面命令:

next build
next export

你可以在package.json添加一个 NPM 脚本,如下所示:

{
  "scripts": {
    "build": "next build",
    "export": "npm run build && next export"
  }
}

接着只用执行一次下面命令:

npm run export

然后你将会有一个静态页面应用在out 目录下。

你也可以自定义输出目录。可以运行next export -h命令查看帮助。

现在你可以部署out目录到任意静态资源服务器上。注意如果部署 GitHub Pages 需要加个额外的步骤,文档如下

例如,访问out目录并用下面命令部署应用ZEIT Now.

now