我是 NestJs + Typescript 的新手,尝试初始化一个项目,构建后抛出以下错误:
错误 [ExceptionHandler] Nest 无法解析 ConfigurationService(ConfigService,?)的依赖项。请确保索引 [1] 处的参数 CachingService 在 ConfigurationService 上下文中可用。
我尝试了很多可能的方法来解决这个问题,但还没有成功
这些是有问题的两个模块:
import { CacheModule, Module } from '@nestjs/common';
import { CachingService } from './caching.service';
@Module({
imports: [
CacheModule.register({
ttl: 0,
}),
],
providers: [CachingService],
exports: [CachingService],
})
export class CachingModule {}
import { Module } from '@nestjs/common';
import { ConfigModule } from '@nestjs/config';
import { CachingModule } from '../caching/caching.module';
import { ConfigurationService } from './configuration.service';
import { config } from './environmentConfig/default.config';
import deploymentConfig from './deploymentConfig/config';
import { CachingService } from '../caching/caching.service';
@Module({
imports: [
ConfigModule.forRoot({
isGlobal: true,
load: [() => config, deploymentConfig],
}),
CachingModule,
],
providers: [ConfigurationService, CachingService],
exports: [ConfigurationService],
})
export class ConfigurationModule {}
这是我尝试使用 cachingModule 的服务,并且抛出错误:
import { Injectable, Logger, OnModuleInit } from '@nestjs/common';
import { ConfigService } from '@nestjs/config';
import { CachingService } from '../caching/caching.service';
@Injectable()
export class ConfigurationService implements OnModuleInit {
private readonly logger = new Logger(ConfigurationService.name);
constructor(
private readonly configService: ConfigService,
private cachingService: CachingService,
) {}
如何解决这个问题?
最佳答案
在 ConfigurationModule 中删除 CachingService 作为提供程序。
关于node.js - NestJS - Nest 无法解析 ConfigurationService 的依赖关系(ConfigService,?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72539881/