Nestjs,我无法从模块的静态函数中访问我的环境变量

问题描述

我想用 nest.js 创建一个动态模块,这个模块的目的是在我的应用程序的其余部分提供一个在这函数中初始化的变量。

此变量必须根据我的环境变量进行初始化,这些变量存储在我的项目的 .env 文件中。

当我尝试从服务访问它时没有问题(使用 process.env 和 ConfigModule 注入)。

但是当我想从我的静态函数 forRoot 中执行此操作时,所讨论的环境变量为空。

.env 文件

enter image description here

应用模块:

enter image description here

核心模块:

enter image description here

Firebase 模块:

enter image description here

在 FirebaseModule 中,我的环境变量为空。

我的尝试:

  • 我尝试将 ConfigModule 导入移动到 CoreModule 而不是 AppModule,在这种情况下我可以访问我的环境变量
  • 我尝试在 forRoot 函数的参数中添加所需的配置:
@Module({
    imports: [
        ConfigModule,FirebaseModule.forRoot({
            url: process.env.FIREBASE_ADMIN_DATABASE_URL,key: process.env.FIREBASE_ADMIN_PRIVATE_KEY,id: process.env.FIREBASE_ADMIN_PROJECT_ID,email: process.env.FIREBASE_ADMIN_CLIENT_EMAIL
        })
    ]
})
export class CoreModule {
}

但这并不能解决我的问题。

有谁知道如何解决这个问题? 谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...