【发布时间】:2020-06-28 11:02:49
【问题描述】:
我是 NestJs 的新手,我有一个无法解决的问题。
UsersService 有两个依赖项
-TypeOrm UsersRepository 注入 -WalletsService 注入
Typeorm 注入由装饰器完成,如下所示。
//UsersService
@Injectable()
export class UsersService implements IUserService {
constructor(
@InjectRepository(Users)
private usersRepository: Repository<Users>,
private readonly walletsService: WalletsService,
) { }
每当我更改第一次注射时,它都无法解决。
可能我错过了什么。下面有所有照片和描述
//UsersModule
@Module({
controllers: [UsersController],
exports: [UsersService],
imports: [WalletsModule, TypeOrmModule.forFeature([Users])],
providers: [UsersService],
})
export class UsersModule { }
//WalletsModule
@Module({
controllers: [WalletsController],
exports: [WalletsService],
imports: [TypeOrmModule.forFeature([Wallets])],
providers: [WalletsService]
})
export class WalletsModule { }
[当用户存储库首次注入时]
Nest can't resolve dependencies of the UsersService (?, WalletsService). Please make sure that the argument UsersRepository at index [0] is available in the UsersService context.
Potential solutions:
- If UsersRepository is a provider, is it part of the current UsersService?
- If UsersRepository is exported from a separate @Module, is that module imported within UsersService?
@Module({
imports: [ /* the Module containing UsersRepository */ ]
})
[Wallets Service 首次注入时]
Nest can't resolve dependencies of the UsersService (?, UsersRepository). Please make sure that the argument WalletsService at index [0] is available in the UsersService context.
Potential solutions:
- If WalletsService is a provider, is it part of the current UsersService?
- If WalletsService is exported from a separate @Module, is that module imported within UsersService?
@Module({
imports: [ /* the Module containing WalletsService */ ]
})
提前谢谢你。我希望它的描述性足够。祝你有美好的一天!
【问题讨论】:
-
请不要将明显是文本的内容发布为图像。您可以将错误消息复制为纯文本。
-
这能回答你的问题吗? Nestjs can't resolve dependencies of XModel
-
感谢杰伊的建议。我查了你回答的问题。正如我所理解的那样,导入数组应该只有模块而不是提供者。提供者数组反之亦然。正如您在问题中看到的那样,从这个角度来看,我的代码就像您建议的那样。在 UsersService 构造函数中第一个参数给出了注入错误,它不依赖于 WalletsService 或 TypeOrm 生成的 Repository。每当我切换参数时,另一个都会给出“无法解决”错误:/感谢您的评论和帮助。我经常使用您的 testing-nestjs 存储库。谢谢 ! - @JayMcDoniel
-
你是对的! @JayMcDoniel。我查找了整个代码库,发现了一些与您指出的相同的错误。可能一个错误引发了另一个错误。感谢您的帮助!答案是你的,我不知道如何批准你的评论作为答案。如果你知道请帮忙,我可以关闭这个问题