gpt4 book ai didi

node.js - NestJS 条件模块导入

转载 作者:行者123 更新时间:2023-12-05 01:06:29 26 4
gpt4 key购买 nike

有没有办法有条件地导入模块?我想检查 .env 文件是否存在,所以我使用 ConfigModule 配置 env 变量。

    imports: [
UsersModule,
ConfigModule.forRoot({ load: [configuration] }), //I want to use this just if the .env file exists
MongooseModule.forRoot(
`mongodb+srv://${process.env.DATABASE_USER}:${process.env.DATABASE_PASSWORD}@${process.env.DATABASE_URL}`,
),
],

为什么:我部署了一个 api 并使用 heroku 配置了环境变量,并且在生产中它可以工作,但是我没有这些变量来运行开发中的代码,并且我无法在我的公共(public)存储库中公开 .env 因为这包含我的数据库凭据。正因为如此,我想创建一个 .env 文件并将其放在 .gitignore 上以不使用此文件发布

最佳答案

您可以通过 spread 和根据您想要的任何条件的三元检查轻松完成此操作。如果检查结果为假,则返回一个空数组,模块将不被包含。

@Module({
imports: [
...(isEnvPresent ? [ConfigModule.forRoot({ load: [configuration] })] : []),
UsersModule,
],
})

关于node.js - NestJS 条件模块导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69120748/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com