【问题标题】:NestJS Using ConfigService with TypeOrmModuleNestJS 使用 ConfigService 和 TypeOrmModule
【发布时间】:2019-03-05 07:54:49
【问题描述】:

我按照文档https://docs.nestjs.com/techniques/configuration 中的描述设置了一个 ConfigService

如何通过 TypeOrmModule 使用此服务?

TypeOrmModule.forRoot({
  type: 'mysql',
  host: 'localhost',
  port: 3306,
  username: 'root',
  password: 'root',
  database: 'test',
  entities: [__dirname + '/**/*.entity{.ts,.js}'],
  synchronize: true,
}),

【问题讨论】:

    标签: nestjs


    【解决方案1】:

    参见https://docs.nestjs.com/techniques/database 异步配置章节

    import {ConfigService} from './config.service';
    import {Module} from '@nestjs/common';
    import {TypeOrmModule} from '@nestjs/typeorm';
    
    @Module({
        imports: [
            TypeOrmModule.forRootAsync({
                imports: [ConfigModule],
                useFactory: (config: ConfigService) => config.get('database'),
                inject: [ConfigService],
            }),
        ],
    })
    export class AppModule {}
    

    【讨论】:

    • 至少需要进行一些更改才能使其对我有用:1. import { ConfigModule, ConfigService } from '@nestjs/config'; 2. 导入:[ConfigModule.forRoot()],
    • @Kevin 没错!
    【解决方案2】:

    如果您想使用配置类ConfigService,请使用useClass 并提供TypeOrmConfigService

    import { Module } from '@nestjs/common';
    import { TypeOrmModule } from '@nestjs/typeorm';
    import { ConfigModule } from './config/config/config.module';
    import { TypeOrmConfigService } from './config/typeorm.config';
    import { ConfigService } from './config/config/config.service';
    
    @Module({
      imports: [
        ConfigModule,
        TypeOrmModule.forRootAsync({
          imports: [ConfigModule],
          useClass: TypeOrmConfigService,
          inject: [ConfigService],
        }),
      ],
    })
    export class AppModule {}
    

    TypeORM 集成文档:https://docs.nestjs.com/techniques/database#async-configuration

    配置:https://docs.nestjs.com/techniques/configuration#using-the-configservice

    【讨论】:

      猜你喜欢
      • 2018-12-01
      • 2021-01-18
      • 2020-07-23
      • 1970-01-01
      • 1970-01-01
      • 2022-06-17
      • 2022-07-14
      • 2021-05-11
      • 1970-01-01
      相关资源
      最近更新 更多