#reactjs
Вопрос:
Я пытаюсь обновить состояние компонента класса с помощью реквизитов, отправленных из вышеуказанного компонента, Сначала я установил конструктор, который извлекает данные из реквизитов и помещает их в состояние, но это не сработало из-за того, что не вызывалась функция render ().
Итак, я узнал о функции getDerivedStateFromProps
, которая вызывалась до рендеринга, но я не знаю, правильно ли я ее использую.
Я отправляю опору как institute
из вышеприведенного компонента и выполняю getDerivedStateFromProps()
примерно так:
static getDerivedStateFromProps(nextProps, prevState) {
if (prevState.id !== nextProps.institute.id) { // need to update
return {
id: nextProps.id,
name: nextProps.name,
contactName: nextProps.contactName,
phoneNumber: nextProps.phoneNumber,
city: nextProps.city,
street: nextProps.street,
number: nextProps.number,
deleted: nextProps.deleted
};
}
console.log("null")
return null;
}
Я также установил значения initState:
state = {
id: '',
name: '',
contactName: '',
phoneNumber: '',
city: '',
street: '',
number: '',
deleted: '',
}
getDerivedStateFromProps
если утверждение верно, но оно вообще не обновляет состояние.
Я буду признателен за любую помощь.
Спасибо!
Комментарии:
1. Можно ли опубликовать весь код этого компонента