vue实现未登录跳转到登录页面的方法


Posted in Javascript onJuly 17, 2018

环境:vue 2.9.3; webpack;vue-router

目的:实现未登录跳转

例子:直接在url地址栏输入...../home,但是这个页面要求需要登陆之后才能进入,判断的值就通过登陆之后给本地缓存存入的token判断,如果没有就跳转到登录页面,有的话就打开。

图示:

1、直接在url地址栏输入http://127.0.0.1:9000/#/home,但是页面会直接跳转到登录页,而且会带上参数。

vue实现未登录跳转到登录页面的方法

vue实现未登录跳转到登录页面的方法

--------------------------------------------分割线----------------------------------------------

vue-router需要安装

首先配置路由

/src/router/index.js

import Vue from 'vue'
import Router from 'vue-router'
Vue.use(Router)
export default new Router({
 routes: [
  {
   path: '/',// 登录
   name: 'Login',
   component: resolve => require(['@/PACS/pages/Login'],resolve)
  },{
   path: '/home',
   name: 'Home',
   meta: {
    requireAuth: true, // 判断是否需要登录
   },
   component: resolve => require(['@/PACS/pages/Home'],resolve)
  } 
  ]
})
 ## 增加了字段 requireAuth 用来判断该路由是否需要登录。

然后配置main.js

// 路由判断登录 根据路由配置文件的参数
router.beforeEach((to, from, next) => {
 if (to.matched.some(record => record.meta.requireAuth)){ // 判断该路由是否需要登录权限
  console.log('需要登录');
  if (localStorage.token) { // 判断当前的token是否存在 ; 登录存入的token
   next();
  }
  else {
   next({
    path: '/',
    query: {redirect: to.fullPath} // 将跳转的路由path作为参数,登录成功后跳转到该路由
   })
  }
 }
 else {
  next();
 }
});

这里是登录时存入的token

vue实现未登录跳转到登录页面的方法

##这样的话登录时就会直接跳转到登录页面。

实现登录成功后再跳回开始输入的页面,就要用到后面传递的值了。

vue实现未登录跳转到登录页面的方法

vue实现未登录跳转到登录页面的方法

如果包含redirect就跳转到刚刚输入的页面。

注意:如果将用户数据保存到localstorage是不合理的,这里只是给出一种思路,如果登陆之后不清空浏览器数据,token一直存在的,判断就会失效。

总结

以上所述是小编给大家介绍的vue实现未登录跳转到登录页面,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
动态加载iframe
Jun 16 Javascript
javascript学习网址备忘
May 29 Javascript
JavaScript设置FieldSet展开与收缩
May 15 Javascript
用jquery设置按钮的disabled属性的实现代码
Nov 28 Javascript
jquery.pagination.js 无刷新分页实现步骤分享
May 23 Javascript
浅析JS刷新框架中的其他页面 && JS刷新窗口方法汇总
Jul 08 Javascript
从零学jquery之如何使用回调函数
May 16 Javascript
JavaScript DOM基础
Apr 13 Javascript
javascript高级编程之函数表达式 递归和闭包函数
Nov 29 Javascript
浅谈javascript中的数据类型转换
Dec 27 Javascript
微信小程序 POST请求的实例详解
Sep 29 Javascript
vue自定义switch开关组件,实现样式可自行更改
Nov 01 Javascript
打通前后端构建一个Vue+Express的开发环境
Jul 17 #Javascript
详解如何从零开始搭建Express+Vue开发环境
Jul 17 #Javascript
微信小程序自定义组件之可清除的input组件
Jul 17 #Javascript
微信小程序倒计时功能实例代码
Jul 17 #Javascript
详解vue+webpack+express中间件接口使用
Jul 17 #Javascript
微信小程序实现默认第一个选中变色效果
Jul 17 #Javascript
Vue2.X 通过AJAX动态更新数据
Jul 17 #Javascript
You might like
php将数据库中所有内容生成静态html文档的代码
2010/04/12 PHP
PHP 图片文件上传实现代码
2010/12/29 PHP
php调用c接口无错版介绍
2014/03/11 PHP
浅谈PHP Cookie处理函数
2016/06/10 PHP
使用正则去除php代码中的注释方法
2016/11/03 PHP
PHP curl批处理及多请求并发实现方法分析
2018/08/15 PHP
RR vs IO BO3 第一场2.13
2021/03/10 DOTA
javascript学习随笔(使用window和frame)的技巧
2007/03/08 Javascript
javascript实现的鼠标链接提示效果生成器代码
2007/06/28 Javascript
javascript 对象定义方法 简单易学
2009/03/22 Javascript
extJs 下拉框联动实现代码
2010/04/09 Javascript
详解jquery中$.ajax方法提交表单
2014/11/03 Javascript
jquery实现对联广告的方法
2015/02/05 Javascript
Jquery操作Ajax方法小结
2015/11/29 Javascript
基于javascript代码检测访问网页的浏览器呈现引擎、平台、Windows操作系统、移动设备和游戏系统
2015/12/03 Javascript
基于jQuery实现动态搜索显示功能
2016/05/05 Javascript
JavaScript动态添加事件之事件委托
2016/07/12 Javascript
socket.io学习教程之深入学习篇(三)
2017/04/29 Javascript
laydate只显示时分 不显示秒的功能实现方法
2019/09/28 Javascript
jQuery实现的分页插件完整示例
2020/05/26 jQuery
vue 组件间的通信之子组件向父组件传值的方式
2020/07/29 Javascript
Vue全局使用less样式,组件使用全局样式文件中定义的变量操作
2020/10/21 Javascript
Python 登录网站详解及实例
2017/04/11 Python
python flask 多对多表查询功能
2017/06/25 Python
python 实现一个图形界面的汇率计算器
2020/11/09 Python
Python图像处理之膨胀与腐蚀的操作
2021/02/07 Python
解析html5 canvas实现背景鼠标连线动态效果代码
2019/06/17 HTML / CSS
联想新西兰官方网站:Lenovo New Zealand
2018/10/30 全球购物
行政部工作岗位职责范本
2014/03/05 职场文书
平面设计求职信
2014/03/10 职场文书
教师竞聘上岗演讲稿
2014/09/03 职场文书
村委会贫困证明范文
2014/09/21 职场文书
万能检讨书2000字
2014/10/17 职场文书
幼师小班个人总结
2015/02/12 职场文书
Python pandas读取CSV文件的注意事项(适合新手)
2021/06/20 Python
springboot创建的web项目整合Quartz框架的项目实践
2022/06/21 Java/Android