• 카테고리

    질문 & 답변
  • 세부 분야

    웹 개발

  • 해결 여부

    미해결

TO DO LIST

22.11.22 16:33 작성 조회수 203

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

 

무슨 실수를 했는지 한번 확인해주실수 있을까요??ㅜㅜ

let taskInput = document.getElementById('task-input'); let addButton = document.getElementById('add-button'); let tabs = document.querySelectorAll('.task-tabs div'); let taskList = []; let mode = 'all'; let filterList = []; addButton.addEventListener('click', addTask); for (let i = 1; i < tabs.length; i++) { tabs[i].addEventListener('click', function (event) { filter(event); }); } function addTask() { let task = { id: randomIdGenerate(), taskContent: taskInput.value, isComplete: false, }; taskList.push(task); render(); } function render() { let list = []; if (mode == 'all') { list = taskList; } else if (mode == 'ongoing' || mode == 'done') { list = filterList; } } let resultHTML = ''; let list = []; for (let i = 0; i < list.length; i++) { if (list[i].isComplete == true) { resultHTML += `<div class="task" id="${list[i].id}"> <div class ="task-done">${list[i].taskContent}</div> <div> <button onclick="toggleComplete('${list[i].id}')">Check</button> <button onclick="deleteTask('${list[i].id}')">Delete</button> </div> </div>`; } else { resultHTML += `<div class="task" id="${list[i].id}"> <div>${list[i].taskContent}</div> <div> <button onclick="toggleComplete('${list[i].id}')">Check</button> <button onclick="deleteTask('${list[i].id}')">Delete</button> </div> </div>`; } } document.getElementById('task-board').innerHTML = resultHTML; function toggleComplete(id) { for (let i = 0; i < taskList.length; i++) { if (taskList[i].id == id) { taskList[i].isComplete = !taskList[i].isComplete; break; } } render(); console.log(taskList); } function filter(event) { mode = event.target.id; let filterList = []; if (mode == 'all') { render(); } else if (mode == 'ongoing') { for (let i = 0; i < taskList.length; i++) { if (taskList[i].isComplete == false) { filterList.push(taskList[i]); } } render(); } else if (mode == 'done') { for (let i = 0; i < taskList.length; i++) { if (taskList[i].isComplete == true) { filterList.push(taskList[i]); } } render(); } } console.log(filterList); function randomIdGenerate() { return (performance.now().toString(36) + Math.random().toString(36)).replace( /\./g, '' ); } function deleteTask(id) { for (let i = 0; i < taskList.length; i++) { if (taskList[i].id == id) { taskList.splice(i, 1); break; } } render(); }

답변 1

답변을 작성해보세요.

0

안녕하세요

어떤 에러가 났는지 에러메세지와 코드를 읽기쉽게 정리해서 올려주시면 감사하겠습니다 글작성시 상단 툴바에 </> 이렇게 생긴 코드를 선택하시면 코드 보이는 그대로 붙여넣기해서 올려주실 수 있습니다!