uniapp路由守卫
项目地址:https://hhyang.cn/v2/start/quickstart.html
按照他的方法安装,创建相应的js即可,有点基础的自己捣鼓一下就可以了。我的应用场景是:没有登录痕迹->直接显示登录页面;登录痕迹存在则检查是否在登录状态->在则不处理,不在则删除痕迹。重点的来了!!下次启动时直接启动到登录页面。
需要注意的点:
- 启动页为一张空白页面,且必须为非tabBar页面
- 按照插件提示配置好相关参数,基本复制粘贴即可
开始配置:
//pages.json "pages": [ { "path":"pages/start/start" }, { "path": "pages/login/index", "style": { "navigationBarTitleText": "登录" } }, { "path": "pages/index/index", "style": { "navigationBarTitleText": "首页" } }, } ]
<!-- start.vue --> <template> <view> </view> </template> <script> export default { data() { return { } }, methods: { }, onShow() { if(!uni.getStorageSync('Session')){ uni.redirectTo({ url:'/pages/login/index' }) }else{ uni.switchTab({ url:'/pages/index/index' }) } } } </script> <style> </style>
//router.js router.beforeEach((to, from, next) => { //检查是否存在Session,且不是来自login if(!uni.getStorageSync('Session') && to.path!=='/pages/login/index'){ //没有登录,next到登录页面 //这里一定要对to.path做判断,否则会无限循环 return next({path:'/pages/login/index',NAVTYPE :'replace'}) } if(to.path=='/pages/start/start'){ //如果有session,且地址是strt,证明正在启动APP return next('/pages/index/index') } //其他路由不管 next() })
至此结束,完全OK
本文来自博客园,作者:小枫同学,除网络转载的部分,其他版权属于作者和博客园所有,未经作者或博客园许可,禁止转载、复制、重新发布完整或者部分文字、代码、图片等信息,否则将保留追究法律责任的权利(如博客侵权了您的作品,本人再次表示抱歉,请将原创地址发送至下文邮箱,核实后立刻删除。)。查阅文章的同学,由于网络爬虫严重,有些代码并不会完整贴出来或者存在bug,不过你可以发送邮件到xfstune@126.com获取新代码,记得附上文章链接
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!