Когда бы вы ни работали с состоянием в React, почти всегда имеет смысл позволить React обрабатывать обновления за вас. Похоже, вы могли бы использовать хук useState
и использовать форму функциональное обновление для обновления своего состояния на основе предыдущего состояния:
// create domain with initial state
const [domainValidationSummary, setDomainValidationSummary] = React.useState({
status: null,
domainName: "",
validated: false
});
// this is just an example object to provide an example
const responseSummary = {
status: "complete",
domainName: "example",
validated: true,
};
setDomainValidationSummary((prev) => ({
...prev,
status: responseSummary.status,
domainName: responseSummary.domainName,
validated: responseSummary.validated,
}));
Я не уверен, что и где responseSummary
происходит от или какой должна быть ожидаемая форма domainValidationSummary
, но если вы в настоящее время управляете двумя объектами, и имеет смысл обновить ваши domainValidationSummary
и responseSummary
одновременно, тогда useReducer
будет еще один отличный вариант.