所以我有一系列待办事项。当我删除一个待办事项时,我试图更改其余项目的 ID,例如 todo[1] 的 ID 也为 1。如果我有 3 个项目并将第一个项目删除为第二个项目,则情况并非如此item 的 id 为 2,即使它应该是 1。这是我目前所拥有的-case REMOVE_TODO: { const newList = state.todos.filter(item => item.id !== action.id); for (let i = 0, newId = 0; i > newList.length; i++, newId++) { newList[i].id = newId; console.log(newList[i].id); //nothing gets logged } return { ...state, todos: newList }; }没有正确更改项目 id 没有任何反应,即使我控制台记录我刚刚更改的内容的 id,也没有任何反应,也没有任何变化。
2 回答
守着星空守着你
TA贡献1799条经验 获得超8个赞
for 循环中的迭代器看起来有问题。i > newList.length
应该是i < newList.length
。您也可以使用 map 循环遍历 newList 并获得一组较新的数组。
添加回答
举报
0/150
提交
取消