【发布时间】:2021-10-17 22:27:11
【问题描述】:
我正在尝试将服务从一个模块注入另一个模块。我一直在努力
Error: Nest can't resolve dependencies of the AwsSnsService (?). Please make sure that the argument function() {\n if (klass !== Object) {\n return klass.apply(this, arguments);\n }\n } at index [0] is available in the AwsModule context.
下面是代码
aws-sns.service.ts
@Injectable()
export class AwsSnsService {
constructor(private readonly awsSNS: AWS.SNS) {}
}
aws.module.ts
import { Module } from '@nestjs/common';
import { AwsSnsService } from './aws-sns.service';
@Module({
providers: [AwsSnsService],
exports: [AwsSnsService],
})
export class AwsModule {}
我想在我的用户模块中使用 AwsSnsService。我正在按照以下方式进行操作
@Module({
imports: [
SomeOtherModule,
AwsModule,
],
providers: [UserService, UserDevicePushTokensService],
exports: [UserService, UserDevicePushTokensService],
})
export class UserModule {}
@Injectable()
export class UserDevicePushTokensService {
constructor(private readonly awsSnsService: AwsSnsService) {}
}
在我看来,这些点以正确的方式连接起来。还是没搞清楚。
【问题讨论】:
-
AWS.SNS是 Nest 提供商吗?这就是它似乎失败的地方。 -
@BunyamiN 不,它不是巢提供者。也许你是对的,这可能是一个问题
标签: javascript node.js typescript dependency-injection nestjs