Angular 为nesjt设置配置的方式更好,ConfigModule还是普通配置模型

Angular 为nesjt设置配置的方式更好,ConfigModule还是普通配置模型,angular,config,nestjs,Angular,Config,Nestjs,有一种建议方法可以在网站()中为nestjs设置配置。 它使用nestjs模块,并且必须在使用它的每个模块中导入。像 @Module({ imports: [ConfigModule], ... }) 但我更喜欢如下设置配置使用普通节点模型: -配置 |-config/index.ts |-config/config.base.ts |-config/config.dev.ts |-config/config.prod.ts 我认为第二种方法更简单、更直观。你认为哪一种更好 我

有一种建议方法可以在网站()中为
nestjs
设置配置。
它使用nestjs模块,并且必须在使用它的每个模块中导入。像

@Module({
    imports: [ConfigModule],
    ...
})
但我更喜欢如下设置配置使用普通节点模型:
-配置
|-config/index.ts
|-config/config.base.ts
|-config/config.dev.ts
|-config/config.prod.ts

我认为第二种方法更简单、更直观。你认为哪一种更好

我更喜欢使用环境变量(由文档中描述的
dotenv
package提供支持)——当应用程序部署为Docker容器时,它发挥的效果最好


任何配置(包括凭据)都不应发布在GIT存储库中(尤其是prod凭据)。

这两种方法可以同时使用。基本上,
ConfigModule
只不过是对环境变量的简单抽象。您仍然可以遵循“正常节点模式”,但将这些特定于环境的值封装在模块中。通常,它简化了测试,因为您不必到处都使用
process.env
硬编码,相反,您使用的是一个公开的服务,它为您提供了强大的键入优势,并且能够轻松地模拟类的方法

重新评估,以下结构没有问题:

|- config/index.ts
|- config/config.base.ts
|- config/config.dev.ts
|- config/config.prod.ts
这一切归结为您希望如何访问这些值