Substitua o item da matriz por outro sem alterar o estado

É assim que o exemplo do meu estado se parece:

const INITIAL_STATE = {
 contents: [ {}, {}, {}, etc.. ],
 meta: {}
}

Eu preciso ser capaz de e de alguma forma substituir um item dentro da matriz de conteúdo sabendo seu índice, tentei:

      return {
        ...state,
        contents: [
          ...state.contents[action.meta.index],
          {
            content_type: 7,
            content_body: {
              album_artwork_url: action.payload.data.album.images[1].url,
              preview_url: action.payload.data.preview_url,
              title: action.payload.data.name,
              subtitle: action.payload.data.artists[0].name,
              spotify_link: action.payload.data.external_urls.spotify
            }
          }
        ]
      }

Ondeaction.meta.index é o índice do item da matriz que quero substituir por outro objeto de conteúdo, mas acredito que isso substitui a matriz inteira nesse objeto que estou passando. Eu também pensei em usar.splice() mas isso apenas mudaria a matriz?

questionAnswers(3)

yourAnswerToTheQuestion