【发布时间】:2021-01-02 06:08:54
【问题描述】:
我目前正在尝试使用 NestJS 注入进行设置,但在尝试运行服务器时遇到了错误。
我遇到的问题与我试图将一个类注入到扩展抽象类的控制器中有关,并且我试图在构造函数中设置抽象类的属性。
Controller.ts
@Controller()
export class exampleController extends AbstractController {
constructor(exampleClass: exampleInterface) {
super(exampleClass);
}
@Get()
getExample(): string {
return 'Example';
};
}
AbstractController.ts
export abstract class AbstractController {
private exampleClass: ExampleInterface;
constructor(exampleClass: ExampleInterface) {
this.exampleClass = exampleClass;
};
当我尝试运行我的服务器时,我收到以下错误:
Error: Nest can't resolve dependencies of the ExampleController (?). Please make sure that the argument Object at index [0] is available in the AppModule context.
我已将类实现添加到 app.module 提供程序,但即便如此,该错误也会阻止我运行我的代码。
App.Module.ts
@Module({
imports: [],
controllers: [AppController, ExampleController],
providers: [ExampleClass],
})
export class AppModule {}
ExampleClass.ts
@Injectable()
export class ExampleClass implements ExampleInterface {
doSomething(): void {
console.log('Hello World!');
};
};
我已经尝试了不同的设置并查看了其他一些 StackOverflow 问题,这些问题建议更改 app.module 中的提供程序,但我还没有找到适合我的设置。任何建议将不胜感激。
【问题讨论】:
标签: node.js typescript nestjs