새로운 모듈 만들기
$ nest g mo board
src 폴더 내에 board 폴더가 자동으로 생성되고 board.module.ts 라는 타입스크립트 코드가 생성되어있다.
// board.module.ts
import { Module } from '@nestjs/common';
@Module({})
export class BoardModule {}
컨트롤러 생성
$ nest g co board
모듈을 생성할 때와 같이 board 폴더에 코드가 생성된다.
// board.controller.ts
import { Controller } from '@nestjs/common';
// Controller 데코레이터 옆에 문자열은 라우팅 룰이라고 생각하시면 됩니다!
// 이 컨트롤러는 /board 라는 주소 아래로 요청을 하면 해당 컨트롤러에서 처리를 해요!
// 예를 들면, GET /board/{articleId}, POST /board/comments/ 등이 있어요!
@Controller('board')
export class BoardController {}
서비스 생성
$ nest g s board
// board.service.ts
import { Injectable } from '@nestjs/common';
@Injectable()
export class BoardService {}
모듈에 자동 생성된 코드
import { Module } from '@nestjs/common';
// 컨트롤러
import { AppController } from './app.controller';
// 서비스
import { AppService } from './app.service';
import { BoardModule } from './board/board.module';
@Module({
imports: [BoardModule], // 새로 생김
controllers: [AppController],
providers: [AppService],
})
export class AppModule {}
lodash 설치 : lodash는 Javascript로 코딩할 때 유용하게 사용할 수 있는 유틸성 패키지
$ npm i lodash
tsconfig.json 속성 추가
- "esModuleInterop": true 추가
- ES6 모듈 사양을 준수하여 CommonJS 모듈을 가져올 수 있게 합니다.
'내일배움캠프 노드 4기 > Today I Learned' 카테고리의 다른 글
[Nest.js] lodash 모듈을 못 불러와요 (0) | 2023.02.21 |
---|---|
[Nest.js] DTO (0) | 2023.02.16 |
[Nest.js] IoC와 DI (0) | 2023.02.10 |
[Nest.js] 프로젝트 기본 코드 분석 (0) | 2023.02.10 |
[Nest.js] 설치하기 (0) | 2023.02.10 |