TIL 최종프로젝트(10) 북마크 기능
2023. 6. 22. 22:34ㆍTIL/2023.6월
2023.06.22 목요일<-화요일
#프론트 event.js
bookmarkIcon.addEventListener('click', async () => {
const event_id = parseInt(element.id, 10);
const token = localStorage.getItem("access");
console.log(event_id);
if (payload){
try {
const bookmarkResponse = await fetch(`${backend_base_url}/events/${event_id}/bookmark/`, {
method: 'POST',
headers: {
"Authorization": `Bearer ${token}`
}
});
const bookmarkData = await bookmarkResponse.json();
alert(bookmarkData.message);
} catch (error) {
console.error('Error bookmarking event:', error);
}
} else {
alert("로그인이 필요합니다")
}
});
[문제]
1. 로그인 상태에서 북마크를 시도 했을 시, 북마크 기능이 동작하지 않는 문제가 발생
-> 헤더 부분에 해당 유저의 정보를 넣어 주니 작동 됨
2. event_id가 작동되지 않는 문제가 발생
-> element에서 받아오는 event_id의 타입을 10진법 정수형으로 변경하여 해결
______________________________________________________________________________________________
이후 상세페이지 값을 가지고 오고 조회하는 것을 event_detail.js에서 구현하였습니다.
[느낀점]
js 쉽게 쓰면 쉬운 거 같은데 어렵다
백엔드 구현 후 프론트 구현 시 필요한 id나 필드를 가져오거나 백엔드를 수정이 필요한데, 와이어프레임이나 API명세서, ERD를 보고, 다른 부분에서 필요한 것을 구현해 주는 등 계속해서 변경이 필요했습니다.
혼자 하거나 배포를 하지 않는다면, 실시간을 고치겠지만, 팀 전체가 작업을 하기에 실시간 반영이 어렵습니다.
네 어렵네요
프론트 js css html도 어렵고 익숙하지 않아 하나에 물려있는 시간이 너무 많고 그러니, 진도도 안나가고 그렇습니다 네.
'TIL > 2023.6월' 카테고리의 다른 글
TIL 최종프로젝트(12) 리뷰 기능과 프론트 정리 (0) | 2023.06.23 |
---|---|
TIL 최종 프로젝트(11) 또 북마크 (0) | 2023.06.22 |
TIL 최종프로젝트(9) 프론트 event.html (0) | 2023.06.19 |
TIL최종프로젝트(8) 예매모델 생성 (0) | 2023.06.19 |
TIL 최종프로젝트(7) 수정사항 해결, 예매 형태 변경 (0) | 2023.06.14 |