Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Conexión como inyectable

7/24
Recursos
// src/database/database.module.ts
import { MongoClient } from 'mongodb'; // 👈 Import MongoClient 

@Global()
@Module({
  providers: [
    ...
    {
      provide: 'MONGO',
      useFactory: async () => { // 👈 Inject w/ useFactory
        const uri =
          'mongodb://root:[email protected]:27017/?authSource=admin&readPreference=primary';
        const client = new MongoClient(uri);
        await client.connect();
        const database = client.db('platzi-store');
        return database;
      },
    },
  ],
  exports: ['API_KEY', 'MONGO'],  // 👈 add in exports
})
// src/app.service.ts
import { Injectable, Inject } from '@nestjs/common';
import { Db } from 'mongodb'; // 👈 Import DB Type

@Injectable()
export class AppService {
  constructor(
    // @Inject('API_KEY') private apiKey: string,
    @Inject('TASKS') private tasks: any[],
    @Inject('MONGO') private database: Db,
    @Inject(config.KEY) private configService: ConfigType,
  ) {}

  getHello(): string {
    const apiKey = this.configService.apiKey;
    const name = this.configService.database.name;
    return `Hello World! ${apiKey} ${name}`;
  }
  getTasks() { }  // 👈 Create new method
}

Aportes 3

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

igual otra forma de conectarse a mongo es usando el modulo @nestjs/mongoose aqui dejo la documentacion muy buena por cierto https://docs.nestjs.com/techniques/mongodb

Este curso está buenísimo!

👏