Я пытаюсь установить состояние объекта внутри моего массива. Я достиг этого, но не понимаю.
toggleVisited = countryCode => {
var countries = [ ...this.state.countries ];
var countryToChange = countries.find(country => country.code === countryCode);
countryToChange.visited = !countryToChange.visited;
this.setState({ countryToChange });
}
Я понимаю (в основном), что происходит, вплоть до последней this.setState
строки.
Я изменил код на this.setState({})
, и он все еще работал. Я всегда думал, что set state устанавливает новое значение для ключа объекта. Почему (независимо от того, что я вставил сюда), он все еще правильно настроен?