Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Nestjs | ConfigModule |在`验证'函数中使用(或注入)服务_Node.js_Nestjs_Nestjs Config - Fatal编程技术网

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 {}