环境变量文件 .env

.env 文件指定您的构建/开发时环境变量。

Nuxt CLI 在开发模式和运行 nuxi buildnuxi generate 时内置 dotenv 支持。

除了任何进程环境变量,如果你的项目根目录中有一个 .env 文件,它会自动加载在构建、开发和生成时,并且在那里设置的任何环境变量都可以访问 在你的 nuxt.config 文件和模块中。

如果你想使用不同的文件 例如,使用 .env.local.env.production
你可以通过在使用 nuxi 时传递 --dotenv 标志来实现。

例如:

bash
npx nuxi dev --dotenv .env.local

就像上面一样,这仅适用于开发模式以及运行 nuxi buildnuxi generate 时。

在开发模式下更新 .env 时,Nuxt 实例会自动重启以将新值应用于 process.env。

请注意,从 .env 中删除变量或完全删除 .env 文件不会取消已设置的值。

但是,在构建服务器之后,您需要在运行服务器时负责设置环境变量。

此时不会读取您的 .env 文件, 每种环境的执行方式都不同。

在 Linux 服务器上,您可以使用终端DATABASE_HOST=mydatabaseconnectionstring node .output/server/index.mjs将环境变量作为参数传递。

或者您可以使用 source .env && node .output/server/index.mjs 获取您的 env 文件。

请注意,对于纯静态站点,无法在预呈现项目后设置运行时配置。

如果你想使用在构建时设置的环境变量,但不关心在线更新这些变量(或者只需要在你的应用程序中响应地更新它们)那么 appConfig 可能是更好的选择。 您可以在 nuxt.config(使用环境变量)和项目的 ~/app.config.ts 文件中定义 appConfig