[TIL] 타입스크립트와 nestJs

Cherry Jin·2023년 12월 26일
0

sparta_내배캠

목록 보기
33/53
post-thumbnail
post-custom-banner

타입스크립트는 변수를 만들때 타입을 지정할 수 있다.

let name : string = "Jin";

위의 name 값의 타입을 string 으로 지정하고 있다.
array 배열과 오브젝트의 타입지정도 가능하다.

//array 타입 지정
let names: string[] = ['Jin', 'Joe', 'Jay'];

//Object 타입 지정
let age: { age: number } = { age: 12 };

//type 선언으로 타입을 변수처럼 사용할 수 있다.
type NameType = string;
let myName: NameType = 'Jin';


//say:string은 파라미터의 데이터 타입
//파라미터 괄호 옆 :string은 함수 리턴값의 타입이다.
function helloWorld(say: string): string {
  return 'hello World';
}

nestJs

import {
  Body,
  Controller,
  Delete,
  Get,
  Param,
  Patch,
  Post,
  Query,
} from '@nestjs/common';

@Controller('movies')
export class MoviesController {
  @Get()
  getAll() {
    return '모든 영화 목록 ';
  }

  /** http://localhost:3000/movies/search?name=hi 
  처럼 ? 뒤에 오는 값을 가져오고 싶으면 @Query 를 써야한다.*/
  @Get('search')
  search(@Query('name') searchTitle: string) {
    return `타이틀을 통한 검색 검색어는 ${searchTitle} 입니다`;
  }

  @Get(':id')
  getOne(@Param('id') movieId: string) {
    return `ID를 통해 영화 하나의 정보를 가져올 것입니다. 영화 아이디는 ${movieId}입니다.`;
  }

  @Post()
  create(@Body() movieData) {
    console.log(movieData);
    return '무비 데이터를 만들 것입니다. Body값을 가져오기 위해서는 파라미터에 @Body를 넣어야해요.';
  }

  @Delete(':id')
  remove(@Param('id') movieId: string) {
    return `ID를 통해 무비 데이터를 삭제할 것입니다.영화 아이디는 ${movieId}입니다.`;
  }

  @Patch(':id')
  patchMovie(@Param('id') movieId: string, @Body() updateData) {
    return {
      updatedMovie: movieId,
      ...updateData,
    };
  }
}

무언가 필요하다면 요청해야한다.
@Param 은 parmas 값을 가져오겠다는 요청이다.

profile
풀스택이 되버린 주니어 개발자
post-custom-banner

0개의 댓글