Reactjs 重定向后反应状态为空

Reactjs 重定向后反应状态为空,reactjs,react-router,Reactjs,React Router,我对React和使用重定向非常陌生,我正在尝试使用React路由器实现一个简单的两页应用程序。我想知道重定向到组件后如何初始化组件的状态。例如,我有以下视图组件正在从另一个页面重定向到: class View extends Component { constructor(props) { super(props); this.setState({ name: 'NAME' }); } render() { return (

我对React和使用重定向非常陌生,我正在尝试使用React路由器实现一个简单的两页应用程序。我想知道重定向到组件后如何初始化组件的状态。例如,我有以下视图组件正在从另一个页面重定向到:

class View extends Component {
  constructor(props) {
    super(props);
    this.setState({
      name: 'NAME'
    });
  }

  render() {
    return (
      <div>
       <p>Hello {this.state ? this.state.name : 'null'}<p>
      </div>
      );
  }
}
类视图扩展组件{
建造师(道具){
超级(道具);
这是我的国家({
姓名:“姓名”
});
}
render(){
返回(
你好{this.state?this.state.name:'null'}
);
}
}

上述组件在从另一个页面重定向到后呈现
null
。这里可能缺少一些微妙的东西,但如何正确初始化状态?

您不应该在构造函数中调用
setState()
——组件在其生命周期的这一点上尚未装入。例如,请参见

相反:

构造函数(道具){
超级(道具);
此.state={
姓名:“姓名”
};
}