我有一个待办事项列表,如果用户单击“完成”,我想将数组中该项目的状态设置为“完成”。
这是我的行动:
export function completeTodo(id) {
return {
type: "COMPLETE_TASK",
completed: true,
id
}
}
这是我的减速机:
case "COMPLETE_TASK": {
return {...state,
todos: [{
completed: action.completed
}]
}
}
我遇到的问题是新状态不再具有与所选项目上的该待办事项相关联的文本,并且 ID 不再存在。这是因为我正在覆盖状态并忽略以前的属性吗?我的对象项 onload 如下所示:
Objecttodos: Array[1]
0: Object
completed: false
id: 0
text: "Initial todo"
__proto__: Object
length: 1
__proto__: Array[0]
__proto__: Object
如您所见,我想要做的就是将完成的值设置为 true。