首页 / VUE / vue.js全局路由下的导航守卫的实现
vue.js全局路由下的导航守卫的实现
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了vue.js全局路由下的导航守卫的实现,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1825字,纯文字阅读大概需要3分钟。
内容图文
本篇文章给大家带来的内容是关于vue.js全局路由下的导航守卫的实现 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。什么是导航守卫?
笼统的说,导航守卫是控制用户能够进入哪些路由和不能进入哪些路由的控制器,也就是管理路由的
打比方,在你第一次进入网站,想写博客时,你必须先登录,才能进入博客编写;登陆界面就好比你能进入的路由,而博客是你不能进入的路由,当你登陆后,控制器才会给你权限,才能进入博客路由,这就是导航守卫的用途
全局路由 要在 main.js 文件下创建
想用导航守卫先要有路由
//main.js const router= new VueRouter({ routes:[ {path:'/',name:'home',component:Home}, {path:'/menu',name:'menu',component:Menu}, {path:'/admin',name:'admin',component:Admin}, {path:'/about',name:'about',component:About,redirect: {name:'contactLink'},children:[ //二级路由 {path:'/about/contact',name:'contactLink',component:Contact}, {path:'/history',name:'historyLink',component:History}, {path:'/delivery',name:'deliveryLink',component:Delivery}, {path:'/orderingGuide',name:'orderingGuideLink',component:OrderingGuide,redirect:{name:'phonelink'},children: [ //三级路由 {path:'/phone',name:'phonelink',component:Phone}, {path:'/name',name:'namelink',component:Name} ]}, ]}, {path:'/login',name:'login',component:Login}, {path:'/register',name:'register',component:Register}, {path:'*',redirect:'/'} ], mode:"history" });
利用上面路由对象 router 的方法 beforeEach() 实现导航守卫
//main.js //to:跳转到的路由 from:从哪个路由离开 next:显示函数 router.beforeEach((to,from,next)=>{ if(to.path == '/login' || to.path == '/register'){ next(); }else{ alert("请先登录"); next('/login'); } });
‘/login’ '/register' 为自己定义的路由地址
to.path 为跳转到的路由地址
next() 为显示当前路由内容
next('/login') 跳转到指定路由并显示指定路由的内容
to 对象可获取的信息(console.log(to) 查看)
相关推荐:
VueRouter的导航守卫应该怎么使用
Vue路由动态重定向和导航守卫
以上就是vue.js全局路由下的导航守卫的实现的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是互联网集市为您收集整理的vue.js全局路由下的导航守卫的实现全部内容,希望文章能够帮你解决vue.js全局路由下的导航守卫的实现所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。