NestJS 无法解决 JWT_MODULE_OPTIONS 的依赖关系(同样的问题,不同的解决方案)
Posted
技术标签:
【中文标题】NestJS 无法解决 JWT_MODULE_OPTIONS 的依赖关系(同样的问题,不同的解决方案)【英文标题】:NestJS can't resolve dependencies of the JWT_MODULE_OPTIONS (Same problem, different solution) 【发布时间】:2020-05-27 05:08:12 【问题描述】:这不是重复的!我看到了同样的问题here,但解决方案没有帮助。
由于这个问题,我的 NestJS 实例没有启动:
Nest can't resolve dependencies of the JWT_MODULE_OPTIONS (?). Please make sure that the argument ConfigService at index [0] is available in the JwtModule context.
我的 auth.module.ts:
@Module(
imports: [
TypeOrmModule.forFeature([User, Token]),
DatabaseModule,
UserModule,
ConfigModule,
PassportModule,
JwtModule.registerAsync(
imports: [ConfigModule], // Missing this
useFactory: async (configService: ConfigService) => (
signOptions:
expiresIn: configService.get<string>('JWT_EXPIRATION'),
,
secretOrPrivateKey: configService.get<string>('JWT_SECRET'),
),
inject: [ConfigService],
),
],
controllers: [AuthController],
providers: [AuthService, LocalStrategy],
)
export class AuthModule
这是我的 app.module.ts(入口模块):
@Module(
imports: [
ConfigModule.forRoot(
envFilePath: '.development.env',
),
AuthModule,
UserModule,
DatabaseModule,
],
)
export class AppModule
我正在通过imports: [ConfigModule]
正确导入模块,但仍然出现错误,注入失败,因为模块未导入。
正如我的日志所说,我的 ConfigModule 已 100% 导入应用程序:ConfigModule dependencies initialized
我做错了什么?
【问题讨论】:
你在使用桶 index.ts 文件吗? @raychz 我不是 【参考方案1】:假设您使用的是@nestjs/config
模块,该问题是该模块代码中版本 In the latest version 已解决该问题。如果您使用npm i @nestjs/config@latest
升级到 0.2.3,它应该可以正常运行。
【讨论】:
以上是关于NestJS 无法解决 JWT_MODULE_OPTIONS 的依赖关系(同样的问题,不同的解决方案)的主要内容,如果未能解决你的问题,请参考以下文章
NestJS:无法在 console.log 中获取嵌套对象。错误:类型 Dto 上不存在属性 x
Nestjs 错误:找不到模块“./app.controller”