React 守卫路由

1.在components文件夹下新建一个Auth.js的文件,里面写入判断token的逻辑:

javascript 复制代码
// 导入重定向的路由模块
import { Navigate } from "react-router-dom"
// 获取本地token
let token = window.sessionStorage.getItem('token')
function Auth({children}){    
//如果token存在返回内容
if(token){       
 return <>{children}</>    
 }else{      
  return <Navigate to="/Login" replace></Navigate>  
  }
}
export {Auth}

2.在App.js里导入并使用:

javascript 复制代码
// 导入路由鉴权组件
import {Auth} from './components/Auth'

3.需要鉴权的路由组件用Auth组件包裹,那么这个路由在没有token的情况下就会强制跳转到登录:

javascript 复制代码
<Route path='/'element={ <Auth><Home/></Auth> }></Route)
相关推荐
o***Z4481 小时前
前端组件表单验证,React Hook Form与VeeValidate
前端·react.js·前端框架
A***27952 小时前
前端路由管理最佳实践,React Router
前端·react.js·前端框架
振华OPPO11 小时前
Vue:“onMounted“ is defined but never used no-unused-vars
前端·javascript·css·vue.js·前端框架
Xeon_CC13 小时前
在react-app-rewired工程项目中,调试AntVG6库源码包。
前端·react.js·前端框架
QuantumLeap丶17 小时前
《Flutter全栈开发实战指南:从零到高级》- 13 -状态管理GetX
android·flutter·ios·前端框架
J***Q2921 天前
前端微前端框架原理,qiankun源码分析
前端·前端框架
Baklib梅梅2 天前
故事叙述的力量:用Baklib创作让内容更具温度与共鸣
前端·ruby on rails·前端框架·ruby
IT古董2 天前
在 React 项目中使用 Ky 与 TanStack Query 构建现代化数据请求层
前端·react.js·前端框架
前端市界3 天前
Copilot新模型GPT-5.1太强了!自动生成完美Axios封装,同事都看傻了
前端·前端框架·github