将服务注入NestJS中的控制器功能

时间:2019-11-01 22:45:58

标签: typescript dependency-injection nestjs

nestjs中,是否可以将服务直接注入到控制器函数而不是构造函数中?

export class StuffController {
    // Injection via constructor like below works fine...
    // constructor(private readonly stuffService: StuffService) {
    // }

    @Get(':userId')
    index(@Req() req: Request, stuffService: StuffService) {
        // ... however, I'd like to inject it into this function.
    }
}

在我的情况下,原因是某些服务仅在一个功能的范围内使用,而不在控制器的所有功能中使用。类似的概念是可用的,例如在Asp .Net Core中。

我尝试过使用@Inject()@Injectable装饰器,但没有成功。另一个想法是创建一个custom decorator,类似于@Req()的工作方式,但是有没有可能提供更好的方法?

0 个答案:

没有答案