Actualizar valor único en matriz de elementos | reaccionar redux
Tengo una lista de tareas pendientes y quiero establecer el estado de ese elemento en la matriz para "completar" si el usuario hace clic en "completar".
Aquí está mi acción:
export function completeTodo(id) {
return {
type: "COMPLETE_TASK",
completed: true,
id
}
}
Aquí está mi reductor:
case "COMPLETE_TASK": {
return {...state,
todos: [{
completed: action.completed
}]
}
}
El problema que tengo es que el nuevo estado ya no tiene el texto asociado de ese elemento de tarea pendiente en el elemento seleccionado y la ID ya no está allí. ¿Es esto porque estoy sobrescribiendo el estado e ignorando las propiedades anteriores? La carga de mi objeto se ve así:
Objecttodos: Array[1]
0: Object
completed: false
id: 0
text: "Initial todo"
__proto__: Object
length: 1
__proto__: Array[0]
__proto__: Object
Como puede ver, todo lo que quiero hacer es establecer el valor completado en verdadero.