【发布时间】:2021-01-28 19:07:27
【问题描述】:
我使用多个存储库创建了服务:
@Injectable()
export class DataService {
constructor(
@InjectRepository(ClassicPrices, 'connect')
private classicPrices: Repository<ClassicPrices>,
@InjectRepository(ModernPrices, 'connect')
private modernPrices: Repository<ModernPrices>,
) {}
public pricesRepository(server): Repository<ModernPrices | ClassicPrices> {
switch (server) {
case 'modern':
return this.modernPrices;
case 'classic':
return this.classicPrices;
}
}
}
数据模块设置:
@Module({
imports: [
TypeOrmModule.forFeature([
ClassicPrices,
ModernPrices
], 'connect'),
],
providers: [DataService],
exports: [DataService]
})
export class DataModule {}
当我在其他模块中使用它时^ 出现错误“Nest 无法解析 DataService (connect_ClassicPrices) 的依赖项。请确保索引 [2] 处的参数 connect_ClassicPrices 在 DataModule 上下文中可用。
可能的解决方案:
- 如果 connect_ClassicPrices 是提供者,它是当前 DataModule 的一部分吗?
- 如果 connect_ClassicPrices 是从单独的 @Module 导出的,那么该模块是否会导入 DataModule 中?
@Module({
imports: [ /* the Module containing connect_ClassicPrices */ ]
})
如何导出仓库?
【问题讨论】:
-
你在另一个模块中导入
DataModule吗? -
是的,我添加到导入 DateModule