NestJS의 CLI(command-line interface)
NestJS 프로젝트 생성하기
프로젝트 생성시 이름, package manager(npm or yarn) 결정해야함
또한 NestJS가 글로벌로 설치 되어 있어야 함
$ nest new
NestJS 프로젝트 실행하기
default 포트는 3000이고 GET요청을 하면(npm) Hello World!가 브라우저에서 출력됨
$ npm run start
NestJS 프로젝트 실행하기(개발자 모드)
개발자 모드로 npm run을 하게되면 nodemon과 비슷하게 저장 할때마다 서버를 재시작 해준다.(watch mode)
$ npm run start:dev
Nest 버전 확인하기
$ nest --version
Nest CLI확인하기
$ nest --help
NestJS CLI에서 Controller 생성하기 - 1
CLI입력시 컨트롤러폴더의 이름을 입력해야함
$ nest generate controller [name]
NestJS CLI에서 Controller 생성하기 - 2
CLI입력시 컨트롤러폴더의 이름을 입력해야함
$ nest g co [name]
NestJS CLI에서 Controller 생성하기(테스트 케이스 제외) - 3
CLI입력시 컨트롤러폴더의 이름을 입력해야함, 스펙파일은 제외함
$ nest g co --no-spec [name]
NestJS CLI에서 Controller 생성하기(특정경로) - 4
CLI입력시 해당 경로 및 폴더이름까지 포함해야함
ex) module/test로 설정 하면 src폴더에서 module폴더를 생성하고 내부에 test폴더를 생성해서 컨트롤러 파일을 생성합니다.
$ nest g co [modules/test]
NestJS CLI에서 가상으로 Controller 생성하기(특정경로) - 4
CLI입력시 해당 경로 및 폴더이름까지 포함해야함, 가상으로 폴더의 경로를 터미널에 표시
ex) module/test로 설정 하면 src폴더에서 module폴더를 생성하고 내부에 test폴더를 생성해서 컨트롤러 파일을 생성합니다.
$ nest g co [modules/test] --dry-run
NestJS CLI로 Validation만들기
npm 모듈은 nestjs에서 pipe기능을 사용할수 있으며 추가로 validation기능도 사용할수 있다. 자세한 사항은 링크 참조
$ npm i class-validator class-transformer @nestjs/mapped-types
NestJS CLI로 Swagger적용하기
npm 모듈은 nestjs에서 Swagger문서를 작성할수 있다. 자세한 사항은 링크 참조
$ npm i @nestjs/swagger swagger-ui-express
Swagger 문서에 비밀번호 적용시 참고 글 : NestJS Set Password to Swagger Document
NestJS CLI로 TypeORM 및 mysql NPM 적용하기
npm 모듈은 nestjs에서 TypeORM 및 MySQL을 사용할수 있는 모듈이다. 자새한 사항은 링크 참조
$ npm i --save mysql2 typeorm @nestjs/typeorm
만약 mysql 대신 postgresSQL을 사용할려면 mysql2 대신 pg를 사용하면 된다.
NestJS CLI로 enviroment file(.env)적용하기
npm 모듈은 nestjs에서 .env file을 사용할수 있는 모듈이다. 자새한 사항은 링크 참조
$ npm i --save @nestjs/config
이후 해당 .env파일의 검증을 할수 있습니다.
관련 내용은 링크를 참조해 주시기 바랍니다.
$ npm install @hapi/joi
$ npm install --save-dev @types/hapi__joi
NestJS MongoDB npm설치
npm 모듈은 nestjs에서 MongoDB와 CRUD를 할수 있다. 자세한 사항은 링크 참조
$ npm i @nestjs/mongoose mongoose
댓글
댓글 쓰기