react-router Redirect 之后渲染不出来

const Options = () => {
  return (
    <React.Fragment>
      <Header />
      <Content>
        <SideBar />
        <OptionsArea>
          <Switch>
            <Route exact path="/" component={ArticleList} />
            <Route exact path="/picture" component={Picture} />
            <Route exact path="/user" component={User} />
            <Route exact path="/edit" component={Edit} />
          </Switch>
        </OptionsArea>
      </Content>
    </React.Fragment>
  );
};

const App = (props) => {
  const { loginState } = props;
  return (
    <React.Fragment>
      <GlobalStyle />
      <Switch>
        <Route exact path="/login" component={WrappedNormalLoginForm} />
        <Route exact path="/" component={<Options />} />
        {
          loginState ? '' : <Redirect push from="/" to="/login" />
        }
        {/* <Route exact path="/" render={() => (loginState ? (<Options />) : (<Redirect push from="/" to="/login" />))} /> */}
      </Switch>
    </React.Fragment>
  );
};

我的目的是当用户登录时才能进入主界面,没有登录自动重定向到登录页面,但在实际运行中发现login页面始终渲染不出来,控制台也没有报错。是路由问题么 谢谢大家了

阅读 2.7k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题