【发布时间】:2020-10-24 21:53:37
【问题描述】:
几个小时后,我的 NestJS 应用程序无法解决以下问题:
Nest 无法解析 AuthService(?、DentalLabsService、JwtService)的依赖关系。请确保索引 1 处的参数依赖项在 AuthModule 上下文中可用。
我有一个使用三个服务的 AuthService:DentistsService、DentalLabsService、JwtService。每个服务都是不同模块的一部分。这两个服务(DentistsService 和 DentalLabsService)又有依赖关系(MongoDB / Mongoose)。提供者常量为服务提供数据库细节。主要的重要结构如下所示:
auth.service.ts
@Injectable()
export class AuthService {
constructor(
private dentistsService: DentistsService,
private dentalLabsService: DentalLabsService,
private jwtService: JwtService) {}
//further code here
}
dentists.service.ts
@Injectable()
export class DentistsService {
constructor(
@Inject('DENTIST_MODEL')
private dentistModel: Model<Dentist>,
) {}
//further code here...
}
dentists.providers.ts
export const dentistsProviders = [
{
provide: 'DENTIST_MODEL',
useFactory: (connection: Connection) => connection.model('Dentist', DentistSchema),
inject: ['DATABASE_CONNECTION'],
},
];
整个项目可以在我在 GitHub 上的repository 中找到。
为了使 AuthService 了解依赖的 DentistsService 和 DentalLabService 的数据库细节,必须做什么(导入和/或导出)?
如果能在这个问题上提供任何帮助,我将不胜感激!
非常感谢, 彼得
【问题讨论】:
标签: typescript mongoose nestjs