小编Ode*_*eus的帖子

NestJS。无法从不同的模块注入存储库

我正在尝试使用另一个模块中定义的typeorm 自定义存储库

按照文档

如果您想在导入 TypeOrmModule.forFeature 的模块外部使用存储库,则需要重新导出由其生成的提供程序。您可以通过导出整个模块来做到这一点,如下所示:

@Module({
  imports: [TypeOrmModule.forFeature([Role])],
  exports: [TypeOrmModule]
})
export class RoleModule {}
Run Code Online (Sandbox Code Playgroud)

现在,如果我们在 UserHttpModule 中导入 UsersModule,我们就可以在后一个模块的提供者中使用 @InjectRepository(User) 。

就我而言,我这样做:

@Module({
  imports: [RoleModule],
  providers: [UsersService],
  controllers: [UsersController]
})
export class UserModule {}
Run Code Online (Sandbox Code Playgroud)

现在当我注入角色存储库时

export class UserService {
  constructor(@InjectRepository(Role) private roleRepository: Repository<Role>) {}
}
Run Code Online (Sandbox Code Playgroud)

我有一个错误: Nest can't resolve dependencies of the UserService (?).

是我的问题还是文档不正确?有人可以建议这里的错误是什么或给出正确的示例吗?

typeorm nestjs

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

nestjs ×1

typeorm ×1