简体   繁体   English

NestJS - Nest 无法解析 ConfigurationService 的依赖项(ConfigService,?)

[英]NestJS - Nest can't resolve dependencies of the ConfigurationService (ConfigService, ?)

I am new to NestJs + Typescript, trying to initialize a project, after building it throws the following error:我是 NestJs + Typescript 的新手,试图初始化一个项目,在构建它之后会引发以下错误:

ERROR [ExceptionHandler] Nest can't resolve dependencies of the ConfigurationService (ConfigService, ?). Please make sure that the argument CachingService at index [1] is available in the ConfigurationService context.

I tried many possible ways to solve this but no luck yet我尝试了很多可能的方法来解决这个问题,但还没有运气

These are the two modules in question:这些是有问题的两个模块:

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 {}

This is the service where I am trying to use the cachingModule and the error is being thrown:这是我尝试使用缓存模块的服务并且正在引发错误:

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,
  ) {}

How to fix this?如何解决这个问题?

在 ConfigurationModule 中删除 CachingService 作为提供程序。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM