Project 13

[3주차] 고객 지원 게시판 개발 완료 후 회고..

우여 곡절끝에 댓글 기능까지 추가해 게시판의 모습을 갖추게 되었다. 댓글 기능을 추가하며 느낀점은 댓글 또한 댓 '글' 이라는점..다만 댓글을 화면에서 처리할 때 AJAX를 이용해 비동기방식으로 댓글이 바로 화면에 나타나야됬기 때문에 익숙치못한 자바스크립트에서 많은 오류를 만났다. 가장 어려웠던 부분은 댓글 수정이였다. fetch API를 사용하여 댓글 화면을 가져오면서 어떻게 DOM을 조작할지 막막했다. 실제로 화면상에서 댓글이 불려지고 불려진 댓글에서 수정버튼을 눌러도 addEventListener가 반응하지않아 지금 뭔가 많이 잘못되가고있는건가 불안해졌지만 document.addEventListener와 e.target을 이용해 안정적으로 API 호출이 가능해졌다. 2주차까지 고민하던것들... 1...

[2주차] 고민중인것들...

1. 등록 , 수정 화면을을 합쳐서 사용할지 Or 나눠서 사용할지에 대해서 처음 프로젝트 설계를 할 때에 들던 생각은 생성과 수정은 비슷한 메커니즘을 가진다는 생각에 합쳐서 사용하기로 결정했다. 회원 등록 및 수정 기능을 개발하면서 처음 부딛힌 난관은 '1개의 뷰 템플릿이 어떤 분기점에서 생성 페이지가되고 수정 페이지가 되느냐' 였다. 그 해답으로 1. 회원의 ID가 넘어올 경우 -> 회원의 ID를 조회한 뒤 수정 처리 2. 회원의 ID가 넘어오지 않을 경우 -> ID가 null이니 자연스럽게 비어있는 memberDto를 넘겨 등록 처리 로 개발을 진행했지만... 회원 정보 수정시에 수정하면 안되는 필드값들을 readOnly 처리를 해야되서 타임 리프의 th:if를 사용해 두개의 input tag를 만들..

게시판의 공지사항을 상단에 항상 고정해놓기

고객 지원 게시판 제작을하며 팀원과 공지사항은 상단에 항상 고정되있는 방식으로 설계를 진행했다. 원래 고객 지원 게시판 개발은 다른 팀원이 맡아 개발하고 있었지만 같이 고생하는 팀원이나, 팀장인 본인이나 아직 웹개발에 서툰 부분도 많고 아무래도 혼자 진행하기에 벅찬 분량이기도해서 페이징 처리는 내가 맡기로 했다. 일단 최종 결과로 나오게 된 게시판 형태인데 처음에 설계했던 방식 그대로 구현되어 참 다행이다라고 느꼈다 진행하면서 페이징 처리 기능을 구현하면서 어려움이 있었는데... 일반적으로 학원에서 배운대로 페이징 처리를 진행했더니 공지사항 게시물이 맨 마지막페이지에 몰려버렸다.... View Controller에서 한개의 page collection에 공지사항과 일반 게시물을 같이 담아 보냈더니 위와같..