Jan*_*ngo 1 dependency-injection scheduled-tasks nestjs
我正在尝试按照Nest 文档中所述实现任务调度,但没有使用调度的服务的依赖注入示例。我想要的是在重复任务中使用注入的服务,但是当我执行以下操作时:
@Injectable()
export class MyWorkerService {
constructor(private readonly injectedService: MyInjectedService) {}
@Timeout(5000)
async doSomething(): {
console.log(this.injectedService); // undefined
this.injectedService.doStuff(); // TypeError: cannot read property 'doStuff' of undefined
}
}
Run Code Online (Sandbox Code Playgroud)
...依赖注入不起作用。两个服务都在同一模块中注册为提供者。
为什么会出现这种情况呢?我还能如何通过预定方法访问其他服务?
2小时后我在这里回答我自己的问题:)
因此,基本上,我注入到预定服务中的服务之一具有REQUEST范围:
@Injectable({ scope: Scope.REQUEST })
从注入的服务构造函数中删除它后,依赖注入开始按预期工作。
| 归档时间: |
|
| 查看次数: |
2170 次 |
| 最近记录: |