2 글 보임 - 1 에서 2 까지 (총 2 중에서)
-
글쓴이글
-
2024년 1월 3일 23:11 #108798
정복영참가자node.js 강의 중 게시글 삭제 기능에 대해 문의합니다. list.ejs에서 [0], [1], [2].. 부분이 계속 반복됩니다. ------------------------------------------------------------------------------------------------------------------------ document.querySelectorAll(".delete")[0].addEventListener("click", function (e) { console.log(e.target);
fetch("/delete?docId=" + e.target.dataset.id, { method: "DELETE" }) .then((r) => r.text()) .then((result) => { e.target.parentElement.parentElement.style.display = "none"; }); });
document.querySelectorAll(".delete")[1].addEventListener("click", function (e) { console.log(e.target);
fetch("/delete?docId=" + e.target.dataset.id, { method: "DELETE" }) .then((r) => r.text()) .then((result) => { e.target.parentElement.parentElement.style.display = "none"; }); });
document.querySelectorAll(".delete")[2].addEventListener("click", function (e) { console.log(e.target);
fetch("/delete?docId=" + e.target.dataset.id, { method: "DELETE" }) .then((r) => r.text()) .then((result) => { e.target.parentElement.parentElement.style.display = "none"; }); }); -------------------------------------------------------------------------------------------------------- 강의에서 추가 언급이 없어 forEach()로 감싸보았습니다.
document.querySelectorAll(".delete").forEach((deleteButton) => { deleteButton.addEventListener("click", function (e) { console.log(e.target);
fetch("/delete?docId=" + e.target.dataset.id, { method: "DELETE" }) .then((r) => r.text()) .then((result) => { e.target.parentElement.parentElement.style.display = "none"; }); }); }); ----------------------------------------------------------------------------------- 잘 작동됩니다.(게시글들이 잘 삭제됩니다.) 하지만 후속 강의에서 문제가 발생했습니다. 후속 강의인 "게시글을 쓴 유저만 자기 게시글 삭제하기"에서 유저가 쓴 글 이외에도 모든 글들이 display='none'이 됩니다. 무엇이 문제인지 모르겠습니다.ㅜ
2024년 1월 4일 09:55 #108827
codingapple키 마스터현재 로그인한 내 _id 와 글에적힌 글쓴이 _id가 같으면 삭제버튼 보여달라고 ejs if문 같은거 쓰면 될듯요
-
글쓴이글
2 글 보임 - 1 에서 2 까지 (총 2 중에서)
- 답변은 로그인 후 가능합니다.