react-router-dom V6 实现react 路由登录拦截

const routes: any = [
  {
    path: "/",
    element: <Navigate to={"/layout/homePage"} />,
  },
  {
    path: "/layout",
    element: <VerifyLogin element={<BasicLayout />} />,
    children: [],
  },
  {
    path: "/signIn",
    element: <SignIn />,
  },
  {
    path: "/signOut",
    element: <SignOut />,
  },
];

// 实现路由拦截
function VerifyLogin(prop: { element: ReactElement }) {
  const isLogin = cookies.get("token") && getStorageData(CURRENT_USER);
  return isLogin ? prop.element : <Navigate to="/signIn" replace />;
}

猜你喜欢

转载自blog.csdn.net/zq18877149886/article/details/130295026