Я создаю приложение с React Native и Redux, и на одном из моих экранов у меня есть переменная состояния, которую я извлекаю из хранилища на componentDidMount()
, а затем сразу же сохраняю в локальной переменной состояния для экрана,Итак, мои componentDidMount()
и componentDidUpdate()
методы выглядят так:
componentDidMount() {
this.props.getA(); // this sets this.props.A
}
componentDidUpdate(prevProps) {
if (!prevProps.A && this.props.A){
this.setState({
A: this.props.A
})
}
}
Проблема:
Если я отойду от этого экрана и затем вернусь назад,this.props.A
все еще существует, но this.state.A
не существует.Я понимаю, почему это происходит, но мне интересно, как лучше переустанавливать this.state.A
каждый раз, когда я возвращаюсь к экрану следующим образом.
Мой вопрос:
Когда экран монтируется, срабатывает componentDidMount()
.Есть ли какое-либо событие, которое срабатывает при переходе обратно к уже смонтированному компоненту?Я знаю, что мог бы сделать это, создав другую переменную состояния, которую я автоматически переключаю при каждом переходе, или могу вызвать forceUpdate()
или что-то еще, но я хочу самое чистое возможное решение.Есть идеи?
Спасибо!