팀 과제(영화 사이트)
[내일배움캠프] 노드몬 팀 과제 영화사이트 제작-3-
김민커
2023. 6. 12. 00:42
저장기능
function load() {
//로컬스토리지의 데이터를 받을 배열//
let list = []
//상세페이지의 아이디와 같은 데이터만 뽑음//
for (var i = 0; i < localStorage.length; i++) {
if (localStorage.key(i).indexOf(arr) != -1) {
list.push(JSON.parse(localStorage.getItem(localStorage.key(i))));
};
}
//map 붙힐 곳//
const listBox = document.querySelector("#visitBook")
listBox.innerHTML = list.map(
(list) => `<div class="labalId">${list.userid}</div>
<div id="${list.index}" class="listBox">
<div class="labalComment">${list.comment}</div>
<button onclick="Update(${list.index})">수정</button>
<button onclick="Delete(${list.index})">삭제</button>
</div>`
)
}
저장한 댓글의 데이터를 로드해서 붙혀주는 함수 load()다.
먼저 for문으로 댓글의 데이터를 전부 받아오고 if문과 indexOf로 특정 데이터를 추출한다.
이를 통해서 댓글이 같은 로컬스토리지에 저장되어 있지만 각 영화의 페이지 마다 그에 맞는 댓글만 로드가 된다.
또한 반복문으로 빈 배열 list에 댓글데이터의 값을 넣는다.
받아온 값은 객체의 형태를 한 문자열이기 때문에 이를 객체화 해주는 JSON.parse를 사용한다.