Vue路由守卫及页面登录权限控制的设置方法(两种)


Posted in Javascript onMarch 31, 2020

①先在我们的登录页面存储一个登录数据

// 登录成功时保存一个登录状态;
sessionStorage.setItem("flag", 1);

② 添加路由守卫

方法一: 直接在路由中添加

const router = new VueRouter({ ... })
 // 路由守卫 
router.beforeEach((to, from, next) => {
 // ...
})

方法二:当我们使用的是export default 方法时可以在main.js中添加 router.beforeEach((to, from, next) => { })方法。

const Recruit = resolve => require(['../components/common/main/index.vue'], resolve);
export default new Router({
 routes: [
 // 登录 
 {
  path: path.login.path,
  name: path.login.path,
  component: Login,
 }, 
 .........

③ 在路由当中添加自定义字段requireAuth,判断当前路由是否需要登录。

下图中1是设置多权限时的设置方法,下图中2是单权限设置方法

Vue路由守卫及页面登录权限控制的设置方法(两种)

④ 在路由守卫中添加我们自己的代码逻辑。

// 路由守卫 
router.beforeEach((to,from,next)=>{
 
 let flag = sessionStorage.getItem('flag ')

 if(to.meta.requireAuth == true){ // 需要登录权限进入的路由
  if(!flag){     // 获取不到登录信息
   next({
    path: '/login'
   })
  }else{      // 获取到登录信息,进行下一步
   return next();
  }
 }else{       // 不需要登录权限的路由直接进行下一步
  return next();
 }
})

总结

到此这篇关于Vue路由守卫及页面登录权限控制的设置方法的文章就介绍到这了,更多相关vue 路由守卫页面登录权限内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
用jquery实现自定义风格的滑动条实现代码
Apr 26 Javascript
表单切换,用回车键替换Tab健(不支持IE)
Jul 20 Javascript
Javascript变量作用域详解
Dec 06 Javascript
JavaScript中的Repaint和Reflow用法详解
Jul 27 Javascript
JavaScript function函数种类详解
Feb 22 Javascript
JavaScript prototype属性详解
Oct 25 Javascript
基于node.js依赖express解析post请求四种数据格式
Feb 13 Javascript
解决vue打包之后静态资源图片失效的问题
Feb 21 Javascript
总结js函数相关知识点
Feb 27 Javascript
ES10 特性的完整指南小结
Mar 04 Javascript
js核心基础之闭包的应用实例分析
May 11 Javascript
细说webpack6 Babel的使用详解
Sep 26 Javascript
Vue-router 报错NavigationDuplicated的解决方法
Mar 31 #Javascript
js实现整体缩放页面适配移动端
Mar 31 #Javascript
react国际化化插件react-i18n-auto使用详解
Mar 31 #Javascript
小程序中使用css var变量(使js可以动态设置css样式属性)
Mar 31 #Javascript
功能完善的小程序日历组件的实现
Mar 31 #Javascript
小程序双头slider选择器的实现示例
Mar 31 #Javascript
JavaScript实现电灯开关小案例
Mar 30 #Javascript
You might like
PHP 处理TXT文件(打开/关闭/检查/读取)
2013/05/13 PHP
强烈声明: 不要使用(include/require)_once
2013/06/06 PHP
解析PHP中的file_get_contents获取远程页面乱码的问题
2013/06/25 PHP
PHP读取txt文本文件并分页显示的方法
2015/03/11 PHP
PHP后期静态绑定实例浅析
2018/12/21 PHP
laravel利用中间件防止未登录用户直接访问后台的方法
2019/09/30 PHP
JS面向对象编程 for Cookie
2010/09/19 Javascript
jquery 实现表单验证功能代码(简洁)
2012/07/03 Javascript
jquery实现动态画圆
2014/12/04 Javascript
javascript中Array数组的迭代方法实例分析
2015/02/04 Javascript
JavaScript让Textarea支持tab按键的方法
2015/06/26 Javascript
IE中document.createElement的iframe无法设置属性name的解决方法
2015/09/14 Javascript
Angular 应用技巧总结
2016/09/14 Javascript
jquery滚动条插件(可以自定义)
2016/12/11 Javascript
js实现随机点名小功能
2017/08/17 Javascript
JavaScript中发出HTTP请求最常用的方法
2018/07/12 Javascript
vue数据初始化initState的实例详解
2019/04/11 Javascript
js+css实现扇形导航效果
2020/08/18 Javascript
如何在vue中使用HTML 5 拖放API
2021/01/14 Vue.js
python为tornado添加recaptcha验证码功能
2014/02/26 Python
python脚本内运行linux命令的方法
2015/07/02 Python
Python遍历目录中的所有文件的方法
2016/07/08 Python
Python使用三种方法实现PCA算法
2017/12/12 Python
Python实现判断并移除列表指定位置元素的方法
2018/04/13 Python
用scikit-learn和pandas学习线性回归的方法
2019/06/21 Python
python3 selenium自动化 下拉框定位的例子
2019/08/23 Python
关于Python turtle库使用时坐标的确定方法
2020/03/19 Python
领先的英国注册在线药房 :Simply Meds Online
2019/03/28 全球购物
年度考核自我鉴定
2013/11/09 职场文书
一封普通求职者的求职信
2013/11/20 职场文书
全神贯注教学反思
2014/02/03 职场文书
致铅球运动员加油稿
2014/02/13 职场文书
银行党员批评与自我批评
2014/10/15 职场文书
护理工作心得体会
2016/01/22 职场文书
mysql 带多个条件的查询方式
2021/06/05 MySQL
Python 数据可视化之Seaborn详解
2021/11/02 Python