有条件的反应路由器

Day*_*yan 3 javascript reactjs react-router redux react-redux

我的反应组件如下所示:

 class App extends React.Component {  
  render() {
    debugger;
    if(!this.props.isUserExist) {
      return (
        <div>
          <Route exact path="/" component={DashboardPage} />
        </div>
      );
    }
    return (
      <div>
        <Switch>
          <Route exact path="/" component={HomePage} />
          <Route exact path="/list" component={ListPage} />
          <Route component={NotFoundPage} />
        </Switch>
      </div>
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

我的问题是:有没有更好的方法来使用 react router v4 检查这些条件?这是检查这些条件的最佳方法吗?这是最佳做法吗?请有人帮我解决这个问题!

Roh*_*ali 7

以更简单的方式处理单个路径,您可以使用,

<Route exact path="/" component={()=>this.props.isUserExist?<HomePage/> : <Dashboard/>} />
Run Code Online (Sandbox Code Playgroud)