Во 2-м блоке, который вы только что отредактировали, как только приходит ответ, он перенаправляет на / home, поэтому оператор return не вызывается, так как теперь он был переведен на домашнюю страницу. вот почему вы получаете propOne как undefined. Для использования на домашней странице задайте значение props для домашней страницы, а при рендеринге домашней страницы вы можете указать sh требуемое значение props для панели навигации. Используйте этот способ для передачи значения props :
this.props.history.push({
pathname: "/home",
state: {
propOne: propOneValue
}
});
И на главной странице, чтобы получить значение prop: (если Main Page является компонентом на основе класса, иначе не используйте это)
this.state = {
propValue: this.props.location.state.propOne,
}
, затем используйте propValue
в компоненте.
Попробуйте console.log(this.props.location)
и проверьте, какие все значения вы получаете, чтобы иметь четкое представление.
Главная страница:
render() {
return (
<Nav propVal={this.state.propValue} />
)
}