Node.js Nestjs | ConfigModule |在`验证'函数中使用(或注入)服务
如何使用Node.js Nestjs | ConfigModule |在`验证'函数中使用(或注入)服务,node.js,nestjs,nestjs-config,Node.js,Nestjs,Nestjs Config,如何使用验证功能中的某些服务?例如记录器服务? 能否将服务注入验证?正如您在其源代码中看到的那样,无法在该验证函数中注入提供者,因为它只是一个不知道Nest DI系统的常规回调。标题 在您的例子中,我将构建一个类来实现validatorConstrainterface,它来自类验证器。然后,您可以使用此问题的答案来注入依赖项: TL:DR 在bootstrap()上使用此选项并实现ValidatorConstraintInterface,以便可以插入依赖项: useContainer(app.
验证功能中的某些服务?例如记录器
服务?
能否将服务注入验证?正如您在其源代码中看到的那样,无法在该验证函数中注入提供者,因为它只是一个不知道Nest DI系统的常规回调。标题
在您的例子中,我将构建一个类来实现validatorConstrainterface
,它来自类验证器。然后,您可以使用此问题的答案来注入依赖项:
TL:DR
在bootstrap()上使用此选项并实现ValidatorConstraintInterface,以便可以插入依赖项:
useContainer(app.select(AppModule),{fallbackOnErrors:true})
ConfigModule
从哪里来?@Micael Levi:我正在尝试尽可能多地使用nestjs ConfigModule、它的验证机制和它的服务,但也能够全面使用其他定制服务。您对如何解决此问题有何建议?我仍然不清楚如何有效地使用ConfigModule,以及如何在验证调用期间出错时记录消息。当验证失败时,lib将抛出错误,并且应用程序将无法启动。查看您是否可以以某种方式使用该错误来执行您想要的操作,或者构建您自己的ConfigModule
::如何将建议的新服务的validate
方法传递给ConfigModule.forRoot({validate})?
import { validate } from './env.validation';
@Module({
imports: [
ConfigModule.forRoot({
validate,
}),
],
})
export class AppModule {}