收到一条错误消息,指出“taskOutput 不可迭代”。数组如下所示:const taskOutput = JSON.parse(window.localStorage.getItem("taskList")) || [];循环如下所示: for (const task of taskOutput) { const taskEl = document.createElement("div"); const {participant, duetime, description} = task; // PROGRESSION-BAR let newDiv = document.createElement("div"); let newBtn = document.createElement("button"); let btnText = document.createTextNode("Fullfør"); newBtn.appendChild(btnText); newDiv.style.border = "3px solid black"; newDiv.style.height = "10px"; newDiv.style.backgroundColor = task.color; newBtn.onclick = function() { if(task.color === "red"){ task.color = "green"; localStorage.setItem('taskList', JSON.stringify(taskOutput)); } else if(task.color === "green"){ task.color = "red"; localStorage.setItem('taskList', JSON.stringify(taskOutput)); newDiv.style.backgroundColor = task.color; } }
1 回答
德玛西亚99
TA贡献1770条经验 获得超3个赞
的...of 语句创建一个循环,迭代可迭代对象,包括:内置字符串、数组、类似数组的对象。
您的任务输出在解析后从本地存储检索时是一个对象;使用循环不可迭代for of
尝试将代码更新为:
const taskList = JSON.parse(window.localStorage.getItem("taskList"))
const taskOutput = taskList ? [taskList] : [];
添加回答
举报
0/150
提交
取消