Совместно используемые модули NestJS выдают ошибку «не является частью обрабатываемого модуля» - PullRequest
0 голосов
/ 15 апреля 2019

Мы запускаем несколько приложений NestJS для различных сервисов. Все они имеют общий код, в нашем случае это ConfigModule и CacheModule. Я хочу разбить их и поместить в корпоративный «общий» пакет npm, чтобы минимизировать копирование кода.

Я сталкиваюсь с ошибкой: Nest cannot export a component/module that is not a part of the currently processed module (ConfigModule). Please verify whether each exported unit is available in this particular contex.

Я немного растерялся, в чем проблема на самом деле. Буду признателен за любую оказанную помощь.

В app.ts на службе А:

import { ConfigModule } from '@company/npm-common';
...
@Module({
  imports: [ConfigModule, ...],
})
export class AppModule {}

Прямо сейчас @company/npm-common импортируется в package.json с file:../npm-common

npm-common/index.ts

export *  from './Config';

npm-common/Config/index.ts

export { ConfigService } from './config.service';
export { ConfigModule } from './config.module';

npm-common/Config/config.service:

import { Global, Module } from '@nestjs/common';
import { ConfigService } from './config.service';

@Global()
@Module({
  providers: [
    {
      provide: ConfigService,
      useValue: new ConfigService(),
    },
  ],
  exports: [ConfigService],
})
export class ConfigModule {}

1 Ответ

0 голосов
/ 15 апреля 2019

Глупый ответ на этот вопрос заключался в том, что основное приложение и внешние модули загружали разные версии NestJS.Кажется, что версия 5.5 не совместима с версией 6 в этом смысле.

...