나는 이번 여행의 이유 프로젝트에서 게시물 CRUD를 구현했는데, 초기에는 게시물에 댓글 기능이 없었다. 그런데 추후에 프론트엔드 측이 댓글과 답글 기능이 추가되면 좋겠다는 요청을 했고, 나도 정말 구현해보고 싶었던 기능이라 흔쾌히 수락했다! 이번 게시물은 내가 댓글, 답글 기능을 구현한 로직부터 마주친 다양한 오류들, 그리고 해결 방법을 기록해보고자 한다. 여행의 이유, 각자가 가진 여행의 이유를 찾고, 둘러보고, 탐구해보자! 각자가 가진 여행의 이유를 찾고, 둘러보고, 탐구해보는 서비스 www.here-you.com GitHub - Here-You/here-you-backend: 여행의 이유: Here You - backend server 여행의 이유: Here You - backend server...
무한 스크롤이란? 무한 스크롤(Infinite Scroll)은 웹사이트나 앱에서 사용되는 스크롤링 기술로, 사용자가 웹페이지를 스크롤 하면 새로운 콘텐츠가 자동으로 동적으로 로드되는 방식이다. 기존의 페이지를 새로 고침 하거나 페이지 이동 버튼을 누르지 않고도 사용자들이 끊임없이 콘텐츠를 스크롤 하여 볼 수 있게 해주는 기술로 사용자가 페이지에 머무르는 시간을 증가시킨다. 나는 이번 nest.js 프로젝트에서 무한 스크롤 구현을 담당했다. 처음에는 무한 스크롤이라고 하니 무척 낯설고 어려워서 막막했는데 원리를 공부하고 직접 구현해 보니 생각보다 어렵지 않았다. 아래는 내가 구현한 페이지에서 무한스크롤이 작동하고 있는 모습이다. 메이트 탐색 페이지에서 랜덤 메이트 탐색 스크롤 부분에서 무한 스크롤을 구현..
21-2학기 데이터 베이스 프로그래밍 강의를 수강하면서 팀 프로젝트를 진행했다. Node.js를 사용해 가상 머신에 서버를 구축하고, DB도 설치해서 웹 애플리케이션을 구축했는데, Node.js를 처음 사용해보면서 겪은 많은 시행착오들과 어려움이 있었다. 그중 하나를 공유해보고자 한다. 우선 우리 팀이 개발한 웹페이지는 아래와 같다. 우리 학교 비교과 프로그램들의 출결을 효율적으로 실행하고 관리할 수 있는 웹앱으로 출석 인증, 설문조사 알림 메일 등 다양한 기능을 지원한다. 내가 맡은 부분은 '출결 관리자'의 메인 화면인데, (1) 로그인한 출결 관리자가 출결 담당하는 강의들을 띄워주고, (2) 각 강의를 클릭했을 때, 유효한 출결 정보가 있다면 그것을, 아니라면 빈 출결 정보 화면을 띄워준다. 마지막으..