Skip to content

环境变量

定义

环境变量是指在操作系统中定义的一组动态命名值,这些值可以影响正在运行的进程的行为。它们通常用于配置应用程序的运行时环境,例如数据库连接字符串、API 密钥等。

在 Next.js 中,可以通过 .env 文件来定义环境变量。Next.js 支持多种环境变量文件,例如:

  • .env.local:本地开发环境
  • .env.development:开发环境
  • .env.production:生产环境

使用

  1. 在 Server 组件(或其他服务端位置)读取(可读非 NEXT_PUBLIC 前缀的变量):

    js
    process.env.API_URL
  2. 在 Client 组件中读取(只能读 NEXT_PUBLIC 前缀的变量):

    js
    process.env.NEXT_PUBLIC_API_URL
  3. 在 API Route 中读取(可读非 NEXT_PUBLIC 前缀的变量):

    js
    process.env.API_URL
  4. next.config.js 暴露(不推荐过度使用)

    next.config.js 中的 env 字段会在构建时把值注入到客户端 bundle(所以不要把 secret 放进去):

    js
    module.exports = {
      env: {
        CUSTOM_VAR: process.env.CUSTOM_VAR, // 在构建时注入
      },
    }

基于 MIT 许可发布