1

我想使用到达路由器制作受保护的路由。在 React Router v4 中,我可以使用 Route render() 方法来实现:

function PrivateRoute({ component: Component, ...rest }) {
  return (
    <Route
      {...rest}
      render={props =>
        fakeAuth.isAuthenticated ? (
          <Component {...props} />
        ) : (
          <Redirect
            to={{
              pathname: "/login",
              state: { from: props.location }
            }}
          />
        )
      }
    />
  );
}

然后声明路线:

<PrivateRoute path="/protected" component={Protected} />

我不知道如何访问或修改到达路由器中的 render() 方法:

<Router>
        <Results path="/" />
        <Details path="/details/:id" />
</Router>

如何使用到达路由器来做到这一点?必须有一种更好的方法,然后在受保护组件内的 render() 方法中编写条件。

4

0 回答 0