NestJS (3) - 공급자(Provider)

냥무룩·2022년 7월 19일
0

NestJS

목록 보기
6/7

Nest에서 Provider란 의존성을 주입해주는 공급자를 의미한다.
Provider

그림과 같이 컨트롤러에 의존성을 주입해주는 여러 컴포넌트들과 팩토리가 공급자라고 할 수 있다.

cats.service.ts

import { Injectable } from '@nestjs/common';
import { Cat } from './interfaces/cat.interface';

@Injectable()
export class CatsService {
  private readonly cats: Cat[] = [];

  create(cat: Cat) {
    this.cats.push(cat);
  }

  findAll(): Cat[] {
    return this.cats;
  }
}

이런 하나하나의 서비스들 또한 공급자라고 할 수 있다.

공급자 등록

공급자(CatsService)가 소비자(CatsContoller)에게 의존성 주입을 하기 위해서는 아래와 같이 모듈에 등록해주어야 한다.

app.module.ts

import { Module } from '@nestjs/common';
import { CatsController } from './cats/cats.controller';
import { CatsService } from './cats/cats.service';

@Module({
  controllers: [CatsController],
  providers: [CatsService],
})
export class AppModule {}

0개의 댓글