분류 전체보기

언어/Nest.js

Nest.js Dockerize

Dockerfile 설정 # lts-alpine 버전으로 노드 이미지 설정 - 별칭은 development FROM node:lts-alpine As development # 작업디렉터리 설정 WORKDIR /app # package*.json 파일들을 복사 COPY package*.json ./ # develop이미지에 package 설치 RUN npm install --only=development # 모든파일 복사 COPY . . # 빌드 RUN npm run build # lts-alpine 버전으로 노드 이미지 설정 - 별칭은 production FROM node:lts-alpine as production # 변수선언 -> 환경변수설정 ARG NODE_ENV=production ENV NODE..

언어/Nest.js

TypeORM - 셋팅

1. Nestjs 프로젝트 생성 nest new typeorm2023 2. TypeORM 관련 패키지 설치 npm install --save @nestjs/typeorm typeorm mysql2 3. root 폴더에 orm.config.ts 추가 (수정필요) import { TypeOrmModuleOptions } from "@nestjs/typeorm"; function ormConfig(): TypeOrmModuleOptions { const commonConf = { SYNCRONIZE: false, ENTITIES: [__dirname + '/domain/*{.ts,.js}'], MIGRATIONS: [__dirname + '/migrations/**/*{.ts,.js}'], MIGRATIONS..

언어/Nest.js

Test Script

spec.ts 테스트를 포함한 파일 해당 ts파일과 spec를 포함하여 테스트 가능 종류 "test": "jest", "test:watch": "jest --watch", "test:cov": "jest --coverage", "test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand", "test:e2e": "jest --config ./test/jest-e2e.json" "test": "jest" 자바스크립트 기본 테스팅 npm 패키지 "test:cov": "jest --coverage" 모든 spec.ts 파일들을 찾아 몇줄이 테스팅 되었는지 알려주면서..

언어/Nest.js

DTO & Pipe

DTO 설명 🔖 프로세스 간에 데이터를 전달하는 객체 기능 유효성 검사 & 변환 (Data Transer Object) 생성 해당 모듈 폴더에 dto폴더 생성 → dto.ts 파일 생성 Pipe @Injectable()데코레이터로 주석이 달린 클래스 Data Transformation 입력 데이터를 원하는 형식으로 변환하는 것을 말한다. 가령 문자열에서 정수로 바꾸는 것을 의미한다. Data Validation 유효성 체크로서, 입력 데이터를 평가하고 유효한 경우 변경되지 않은 상태로 전달된다. 그렇지 않으면 데이터가 올바르지 않을 때 예외를 발생시킨다. validator : 유효성 검사 transformer : 자동 타입 변환기 ex)string으로 get을 받아도 number형인 함수에 number형..

언어/Nest.js

Service & Entity

Service 기능 클래스, 변수, 함수 기능 구현 생성 $ nest g s [이름] 구조 기본 구조 spec파일은 test파일이므로 지워도 무방 app.module.ts에 자동 생성 movie.setvice.ts import { Injectable, NotFoundException } from '@nestjs/common'; import { Movie } from './entities/movie.entity'; @Injectable() export class MoviesService { private movies: Movie[] = []; getAll(): Movie[] { return this.movies; } getOne(id: string): Movie { const movie = this.mov..

언어/Nest.js

Controller

기능 url 매핑 request 받기 query, body 등등 넘기기 생성 nest g co [이름] 구조 기본 구조 spec파일은 test파일이므로 지워도 무방 app.module.ts에 자동 생성 movies.controller.ts import { Body, Controller, Delete, Get, Param, Patch, Post, Put, Query, } from '@nestjs/common'; @Controller('movies') export class MoviesController { @Get() getAll() { return 'Hello World!'; } @Get('search') // 해당 url이 Param보다 밑에 있는 경우 url이 아닌 Param값으로 인식해버린다. se..

언어/Nest.js

CMD 명령어

nest new | n 새로운(표준 모드) Nest 프로젝트 생성 $ nest new [options] $ nest n [options] option 옵션 설명 --dry-run 변경될 내용을 보고하지만 파일 시스템은 변경하지 않습니다.별명:-d --skip-git Git 저장소 초기화를 건너뜁니다.별명:-g --skip-install 패키지 설치를 건너뜁니다.별명:-s --package-manager [package-manager] 패키지 관리자를 지정합니다. npm, yarn또는 을 사용합니다 pnpm. 패키지 관리자는 전역적으로 설치되어야 합니다.별명:-p --language [language] 프로그래밍 언어( TS또는 JS)를 지정합니다.별명:-l --collection [collectionNa..

언어/CSS

white-space

설명🔖 공백 문자 제거속성값 속성값설명normal연속된 띄어쓰기, 들여쓰기 그리고 줄바꿈 문자가 모두 무시nowrap자동 줄바꿈이 일어나지 않음pre연속된 띄어쓰기와 들여쓰기, 줄바꿈이 있는 그대로 유지pre-wrap==pre , 텍스트 안에 긴 행이 있을 때 해당 행에서 자동 줄바꿈pre-line줄바꿈 문자만 있는 그대로 처리해주고 연속된 띄어쓰기와 들여쓰기는 무시하고 모두 띄어쓰기 한 번으로 처리break-spaces잘 안쓰이는 값normal (default)연속된 띄어쓰기, 들여쓰기 그리고 줄바꿈 문자가 모두 무시부모 요소의 가로폭을 넘어갈 때는 자동으로 줄바꿈두 칸이상 연속으로 띄어쓰기를 하거나 들여쓰기를 하는 것도 불가능( 와 같은 HTML 엔티티(entity)를 사용하여 2칸 이상 ..

MellowHoney
'분류 전체보기' 카테고리의 글 목록 (6 Page)