Open crea-vis-art opened 3 months ago
No, you can't write like that. If you want to declare dynamic, you can use forRootAsync
and useFactory
No, you can't write like that. If you want to declare dynamic, you can use
forRootAsync
anduseFactory
exactly!
This is a demo, and hope it can help you. @crea-vis-art first, you need to create a .env file at your project root directory. Sure, you need to set your actual value.
# .env
AMQP_EXCHANGE=demo
AMQP_LOGIN=user
AMQP_PASSWORD=bitnami
AMQP_HOST=rabbitmq.orb.local
// app.module.ts
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { RMQModule } from 'nestjs-rmq';
import { ConfigService, ConfigModule } from '@nestjs/config';
@Module({
imports: [
RMQModule.forRootAsync({
imports: [ConfigModule.forRoot()],
useFactory: (configService: ConfigService) => ({
exchangeName: configService.get<string>('AMQP_EXCHANGE'),
serviceName: 'demo',
connections: [
{
login: configService.get<string>('AMQP_LOGIN'),
password: configService.get<string>('AMQP_PASSWORD'),
host: configService.get<string>('AMQP_HOST'),
},
],
}),
inject: [ConfigService],
}),
],
controllers: [AppController],
providers: [AppService],
})
export class AppModule {}
Hi, I am new at NestJs. Is this example correct? I have no Idea how to get the "configService" as described in the example. I only can find examples with use of "useFactory".
`import { RMQModule } from 'nestjs-rmq';
@Module({ imports: [ RMQModule.forRoot({ exchangeName: configService.get('AMQP_EXCHANGE'), connections: [ { login: configService.get('AMQP_LOGIN'), password: configService.get('AMQP_PASSWORD'), host: configService.get('AMQP_HOST'), }, ], }), ], }) export class AppModule {}`
Sorry but don't get the code formating in the github editor