如何在导入的模块/控制器中访问创建的NestJS ApplicationContext?

如何在导入的模块/控制器中访问创建的NestJS ApplicationContext?,nestjs,Nestjs,我对NestJs比较陌生,我想知道如何从导入的模块或控制器访问在服务器引导中创建的非应用程序上下文?我正在NestJS之上构建一个框架,需要访问框架提供的特定类型组件/服务等列表,以及使用该框架编写的应用程序 对于模块,您无法执行此操作,因为它们将在启动ApplicationContext之前被调用。根据您的情况,可能有帮助的是 对于控制器,您可以使用,它允许您从ApplicationContext动态导入任何内容 需要特别注意的是{strict:boolean}-选项 onModuleIni

我对NestJs比较陌生,我想知道如何从导入的模块或控制器访问在服务器引导中创建的非应用程序上下文?我正在NestJS之上构建一个框架,需要访问框架提供的特定类型组件/服务等列表,以及使用该框架编写的应用程序

  • 对于模块,您无法执行此操作,因为它们将在启动ApplicationContext之前被调用。根据您的情况,可能有帮助的是

  • 对于控制器,您可以使用,它允许您从ApplicationContext动态导入任何内容

  • 需要特别注意的是
    {strict:boolean}
    -选项

    
    onModuleInit(){
    //将仅在ModuleContext中搜索
    this.service=this.moduleRef.get(服务);
    //将搜索整个应用程序
    this.service=this.moduleRef.get(服务,{strict:false});
    }
    
    >我对NestJs比较陌生[…]我正在NestJs之上构建一个框架——你确定这是个好主意吗?