Node.js 依赖注入-INestApplication上的app.get(UploadService)不';无法解决其依赖关系

Node.js 依赖注入-INestApplication上的app.get(UploadService)不';无法解决其依赖关系,node.js,dependency-injection,nestjs,Node.js,Dependency Injection,Nestjs,我正在尝试创建使用嵌套上下文的外部CLI。我已经创建了入口点,它使用NestFactory.create创建应用程序。使用app.get访问服务后,该服务存在并自行工作。问题是,它没有解决任何依赖关系。在文档上没有任何例子,我也没有在互联网上找到任何与这个问题相关的东西 2019年7月17日,我正在节点10上使用最新版本的Nest.js 梅因酒店 import { NestFactory } from '@nestjs/core'; import { AppModule } from '../

我正在尝试创建使用嵌套上下文的外部CLI。我已经创建了入口点,它使用NestFactory.create创建应用程序。使用app.get访问服务后,该服务存在并自行工作。问题是,它没有解决任何依赖关系。在文档上没有任何例子,我也没有在互联网上找到任何与这个问题相关的东西

2019年7月17日,我正在节点10上使用最新版本的Nest.js

梅因酒店

import { NestFactory } from '@nestjs/core';

import { AppModule } from '../app.module';
import { UploadService } from 'src/api/upload/upload.service';
import { UploadModule } from 'src/api/upload/upload.module';

async function bootstrap(): Promise<void> {
  const app = await NestFactory.create(AppModule);
  await app.init();

  const service: UploadService = app.select(UploadModule).get(UploadService);

  console.log(service); // OK - returns UploadService instance
  console.log(service.uploadModel); // X - returns `undefined`
  console.log(service.configService); // X - returns `undefined`
}

bootstrap();
upload.service.ts

import { Injectable } from '@nestjs/common';
import { AwsService } from '../../services/aws/aws.service';

import { Upload } from './upload.schema';
import { InjectModel } from '@nestjs/mongoose';
import { Model } from 'mongoose';

@Injectable()
export class UploadService {
  constructor(
    @InjectModel('Upload')
    readonly uploadModel: Model<Upload>,
    readonly awsService: AwsService,
  ) {}
}

是模型/服务实例。不幸的是,它们都返回未定义的
,因为依赖项注入不起作用

import { Module } from '@nestjs/common';
import { MongooseModule } from '@nestjs/mongoose';
import { AwsModule } from '../../services/aws/aws.module';
import { UploadService } from './upload.service';
import { UploadSchema } from './upload.schema';

@Module({
  imports: [MongooseModule.forFeature([{ name: 'Upload', schema: UploadSchema }]), AwsModule],
  providers: [UploadService],
  exports: [UploadService],
})
export class UploadModule {}

import { Injectable } from '@nestjs/common';
import { AwsService } from '../../services/aws/aws.service';

import { Upload } from './upload.schema';
import { InjectModel } from '@nestjs/mongoose';
import { Model } from 'mongoose';

@Injectable()
export class UploadService {
  constructor(
    @InjectModel('Upload')
    readonly uploadModel: Model<Upload>,
    readonly awsService: AwsService,
  ) {}
}

console.log(service.uploadModel); // X - returns `undefined`
console.log(service.configService); // X - returns `undefined`