this.setState no está fusionando estados como esperaría

Tengo el siguiente estado:

this.setState({ selected: { id: 1, name: 'Foobar' } });  

Luego actualizo el estado:

this.setState({ selected: { name: 'Barfoo' }});

Dado que se supone que setState para fusionar, esperaría que fuera:

{ selected: { id: 1, name: 'Barfoo' } }; 

Pero en cambio se come la identificación y el estado es:

{ selected: { name: 'Barfoo' } }; 

¿Es este comportamiento esperado y cuál es la solución para actualizar solo una propiedad de un objeto de estado anidado?

Respuestas a la pregunta(13)

Su respuesta a la pregunta