티스토리 뷰

컴퓨터공학과 5584977 이지현
캡스톤디자인(1) TEAM 우연한 인연

 

 

우연한 발견 백엔드 개발 전에, 개발 환경을 셋팅했다.

 

먼저, 이미 만들어놓은 우리 팀 깃허브에서 merge 해야 한다.

내 로컬 폴더를 만들고 git init -> git remote add origin <Github url>

 

그리고 원격 -> 로컬로 merge

git fetch
git checkout develop(가져올 branch)
git pull
git checkout feature/5(내가 개발할 branch)
git merge develop

조금 시행착오가 있었지만 여기까지는 완료했다.

 

그리고 잘 돌아가는지 확인하기 위해 npm run start:dev 하니까 오류가 발생했다.

=> 'NODE_ENV'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다.

이것을 그대로 복사해서 검색했는데 어떻게 해결해야할지는 모르겠지만 package.json에서 start:dev 코드 내용을 바꾸는 어떤 글이 있었다. 그래서 전에 NestJS를 공부할 때 쓰던 파일에서 package.json의 start:dev 코드를 비교했고, "NODE_ENV=dev nest start --watch" 라고 되어 있는 것을 "nest start --watch"로 앞에 NODE_ENV를 지워주었더니 제대로 실행되었다. 아까 보았던 글에서 NODE_ENV를 사용하면 윈도우os를 제외하고 작동한다고 해서 깃허브에 iOS로 만들었겠거니 생각했다.

 

그리고 이제 개발을 시작하려는데, 이번에는 Cannot find module '@nestjs/common' or its corresponding type declarations. 라는 오류가 발생하였다.

NestJS는 설치해놓았는데 오류가 발생해서 혹시 더 설치해야 할 것이 있나 생각이 들어 NestJS 공식문서를 보았는데

$ npm i --save @nestjs/core @nestjs/common rxjs reflect-metadata

이런 코드가 있어 그대로 작성해보았는데 이걸 설치해도 달라진 점이 없었다.

그래서 이것저것 검색해보고 package.json을 수정해보기도 했는데 import 코드에서 경로가 잘못되었을 수 있다는 글을 보고 경로를 수정하다가 원래대로 돌렸더니 갑자기 오류가 사라졌다.. 아마 위의 코드로 설치된 것이 반영된 듯하다.

vscode를 재실행하니 다른 파일들에 빨간 밑줄이 있던 내용이 다 사라졌다.

앞으로 새로 설치한 게 있으면 vscode를 재실행해야겠다.

 

 

이렇게 해서 기본적으로 내 로컬 환경에서 개발할 준비는 다 되었다.

 

 

+ 코드 작성하다가 새로운 오류가 생겨서 어떻게 해결했는지 정리함

- dto를 만들다가 @IsString()으로 adminID가 string 형인지 확인해주는 데코레이터인데, 이를 import하려니 라이브러리를 불러오는 데 오류가 생겼다. 그래서 class-validator를 따로 설치해주었다.

 

npm i --save class-validator class-transformer

- 터미널에 위의 명령어를 치면 된다.