Nest 无法解析 RabbitMQService 服务的依赖关系
Posted
技术标签:
【中文标题】Nest 无法解析 RabbitMQService 服务的依赖关系【英文标题】:Nest can't resolve dependencies of RabbitMQService service 【发布时间】:2021-04-20 17:11:39 【问题描述】:我正在构建一个 Nestjs 应用程序,我想在其中创建一个 rabbitmq
@Module(
imports: [
ClientsModule.register([
name: 'rabbitmq',
transport: Transport.RMQ,
options:
urls: [
'amqp://guest:guest@rabbitmq',
],
queue: 'my_queue',
,
,
]),
],
controllers: [],
providers: [RabbitMQService],
exports: [RabbitMQService],
)
和服务:
@Injectable()
导出类 RabbitMQService 构造函数( @Inject('rabbitmq') 私人客户端:ClientProxy )
我得到的错误是:Nest 无法解析 RabbitMQService (?) 的依赖项。请确保索引 [0] 处的参数 rabbitmq 在 RabbitMQService 上下文中可用。 据我所知,这应该可以,但是不行。有人可以帮忙吗?
【问题讨论】:
可以分享ClientsModule
的代码吗?
【参考方案1】:
从错误来看,您的应用程序中的某个地方似乎有 RabbitMQService
在 imports
数组中 @Module()
类应该去的地方。确保将providers
和其他@Injectables()
保留到providers
数组,并将@Module()
和其他DynamicModule
s 保留到imports
数组。 Common error docs
【讨论】:
以上是关于Nest 无法解析 RabbitMQService 服务的依赖关系的主要内容,如果未能解决你的问题,请参考以下文章
Nest.js 在单元测试中无法解析 Mongoose 模型依赖
Nest 无法解析 UsersService (UserModel, ?) 的依赖关系