2024/04 16

[NestJS]

익스프레스의 단점, 한계 필요한 기능이 생길 때마다 미들웨어가 자꾸 추가되고 그러면 익혀야 할 것이 늘어나고 코드도 계속해서 수정해야 함 Nest.js의 장점 컨트롤러, 서비스, 미들웨어, 인터셉터, 모듈 등 웹 서버에 필요한 다양한 구성 요소를 커맨드로 정확하게 구현 가능 ex) nest g co posts -> Posts 컨트롤러 생성 가능 nest.js가 기계적으로 구성한 바탕 위에서는 오히려 실수하기가 힘들다! 때문에 코드의 생산성이 올라가 로직의 퀄리티를 올리는데 집중할 수 있음 컨트롤러 데코레이터를 통해 클래스가 컨트롤러 역할을 함 컨스트럭쳐 인자로 서비스 객체를 넘기면 멤머 변수에 서비스 객체가 주입 => DI (의존성 주입) 생성자를 통한 DI 컨트롤러는 고객(클라이언트)의 음식을 주문받고..

⌨️/Node.js 2024.04.11

최종프로젝트 오류

북마크 조회가 되지 않고 있음(서버 오류) -> 콘솔 에러메시지 보니까 NaN 문제라고 함 userId가 number로 받아와지지 않고 있는 것 같음 찾아보니 @Param('userId') 데코레이터로 매개변수를 추출하면 일반적으로 문자열로 나온다고 함 const userId = Number(user.id); const myBookmarkList = await this.collectionService.getBookmarkColList(userId); 이렇게 수정했는데 여전히 오류 -> 팀원분이 알아내심 @Get('bookmark') 이 코드가 @Get('/:collectionId') 이런 : 들어간 코드 아래에 있어서 그게 적용된거였음 결론: controller 파일을 한 번 더 분리했습니다

🪩/기타 2024.04.05

최종 프로젝트 트러블 슈팅

본격적인 트러블슈팅 포스트는 아니고 메모 형식으로 모아뒀다가 프로젝트가 끝나면 중요한 부분만 다듬어서 준비해두려고 한다. 우선 이 포스트를 매일매일 업데이트하는 것이 목표 1). 0402.화 const collection = await this.colRepository.findOne(collectionId); 여기서 findOne 부분이 자꾸 오류가 나서 찾아보니 typeORM 버전 관련 문제라고 함 https://stackoverflow.com/questions/71548592/nest-js-typeorm-cannot-use-findone-properly -> findOneBy({id: collectionId}); 으로 수정 2). 0403.수 테이블명을 한번 변경했고+그놈의 스네이크케이스때문에 db에..

💻/프로젝트 2024.04.04

컬렉션 상세 조회 관련 고민

나의 컬렉션 타 유저의 컬렉션(북마크 기능) 마이페이지에서 컬렉션을 조회할 수 있는 기능은 이렇게 둘로 나뉜다. 처음에는 getCollectionList처럼 하나의 엔드포인트를 둘까 생각했지만 둘을 따로 조회해야 한다는 점 때문에 getMyCollection / getBookmarkCollection으로 나누게 되었다. 저건 목록 조회 주소이고, 컬렉션 상세 조회는 저기서 /:id 값으로 들어가게 되는데, 문득 getBookmarkCollection/:나의 컬렉션의 id 값을 넣는 상황에 대해 고민을 하게 됐다.. my와 bookmark를 둘로 나누는 것 자체에 대한 고민이 다시 필요할 것 같다. 기능 구현이 어느정도 끝나고 이것에 대한 고민의 결론도 도출이 되었다면 글을 수정할 예정이다😵 일단은 구현해..

💻/프로젝트 2024.04.01