Итак, я смог добраться туда с комментариями.
В конце дня я понял, что мне просто нужно «отредактировать», чтобы быть объектом, содержащим деструктурированный объект.
_onChange = (e, key) => {
const { [key]: { ...edited } } = this.state;
edited[e.name] = e.value;
this.setState({
[key]: edited,
});
};
Здесь edited
станет {... this.state [ключ]}, который после сравнения выглядит так же, как и в предыдущем коде, но с использованием назначения деструктурирования.
Я надеюсь, что люди прокомментируют, если почувствуют, что это неправильно.
Еще проще, предложение Эмиль !
_onChange = (e, key) => {
const { [key]: current } = this.state;
this.setState({
[key]: { ...current, [e.name]: e.value },
});
};