Как утверждали другие, проблема в том, что вам нужно onChange
и value
, чтобы указывать на одно и то же значение / переменную в состоянии.
В качестве шага дальше я бы очистил все эти переменные в состоянии и используйте только один метод для изменения свойств (если, например, у вас много полей и код становится достаточно длинным)
const changeField = (name, value) => {
let newCountryInfo = [...countryInfo];
newCountryInfo[0].data.Country[0][name] = value;
setCountry(newCountryInfo);
};
и в каждый TextField
вы добавляете sth, как показано ниже, в зависимости от поля
onChange={event => {
changeField("name", event.target.value);
}}
Отметьте этот код и ссылку на ящик