NestJS 环境变量未定义

Posted

技术标签:

【中文标题】NestJS 环境变量未定义【英文标题】:NestJS env variable undefined 【发布时间】:2020-08-09 19:36:08 【问题描述】:

我正在尝试使用 official documentation 在我的项目中设置配置变量。

我在 app.module.ts 导入中添加了以下行:

ConfigModule.forRoot(
  isGlobal: true
),

我在项目的根目录下创建了一个 .env 文件,内容如下:

MY_VARIABLE=myself

我使用依赖注入来访问配置服务:

constructor(private configService: ConfigService) 

但是,以下行记录了“环境变量:未定义”

console.log('Env variable: ', this.configService.get<any>('MY_VARIABLE'));

【问题讨论】:

听起来您已经正确设置了它。可以分享复制吗?在您提供的 sn-ps 中,我看不到问题。 【参考方案1】:

几个场景:

您没有.env 文件 .env 定义不正确 您正在尝试从位于服务器根路径之外的 .env 访问环境变量 需要安装dotenv包 部署到无服务器并在functions(或其他可部署文件夹)中缺少.env(即使它位于根位置,它也必须存在)

【讨论】:

以上是关于NestJS 环境变量未定义的主要内容,如果未能解决你的问题,请参考以下文章

带有 ClientsModuleOptions 的 Nestjs 环境变量

在nestjs中使用类验证器验证环境变量?

NestJs:无法读取模块文件中的环境变量但能够读取服务文件?

.env 文件中的变量的 nestjs 问题

NestJS .env 文件未构建

关于“环境变量未定义”的问题