title: Update single value in item array | react redux
body: <p>I have a todo list and want to set the state of that item in the array to "complete" if the user clicks on "complete".</p>
  
  <p>Here is my action: </p>
  
  <pre><code>export function completeTodo(id) {
      return {
          type: "COMPLETE_TASK",
          completed: true,
          id
      }
  }
  </code></pre>
  
  <p>Here is my reducer: </p>
  
  <pre><code>case "COMPLETE_TASK": {
               return {...state,
                  todos: [{
                      completed: action.completed
                  }]
               }
          }
  </code></pre>
  
  <p>The problem I'm having is the new state does no longer have the text associated of that todo item on the selected item and the ID is no longer there. Is this because I am overwriting the state and ignoring the previous properties? My object item onload looks like this: </p>
  
  <pre><code>Objecttodos: Array[1]
      0: Object
          completed: false
          id: 0
          text: "Initial todo"
      __proto__: Object
      length: 1
      __proto__: Array[0]
      __proto__: Object
  </code></pre>
  
  <p>As you can see, all I want to do is set the completed value to true. </p>