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 相关文章推荐
JS和jquery获取各种屏幕的宽度和高度的代码
Aug 02 Javascript
简介JavaScript中Boolean.toSource()方法的使用
Jun 05 Javascript
javascript日期格式化方法小结
Dec 17 Javascript
Js操作DOM元素及获取浏览器高宽的简单方法
Sep 08 Javascript
JS实现求数组起始项到终止项之和的方法【基于数组扩展函数】
Jun 13 Javascript
layui table设置前台过滤转义等方法
Aug 17 Javascript
Vuex 使用及简单实例(计数器)
Aug 29 Javascript
vue 循环加载数据并获取第一条记录的方法
Sep 26 Javascript
9种方法优化jQuery代码详解
Feb 04 jQuery
node.js使用net模块创建服务器和客户端示例【基于TCP协议】
Feb 14 Javascript
JS正则表达式验证密码强度
Mar 18 Javascript
vue中jsonp插件的使用方法示例
Sep 10 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分析
2011/05/02 PHP
PHP中将字符串转化为整数(int) intval() printf() 性能测试
2020/03/20 PHP
PHP输出XML到页面的3种方法详解
2013/06/06 PHP
PHP微信开发之模板消息回复
2016/06/24 PHP
几款极品的javascript压缩混淆工具
2007/05/16 Javascript
利用JQuery动画制作滑动菜单项效果实现步骤及代码
2013/02/07 Javascript
javascript闭包入门示例
2014/04/30 Javascript
浅谈JavaScript数据类型及转换
2015/02/28 Javascript
jquery实现弹出层效果实例
2015/05/19 Javascript
JavaScript实现标题栏文字轮播效果代码
2015/10/24 Javascript
浅析jQuery Ajax请求参数和返回数据的处理
2016/02/24 Javascript
jQuery ajax方法传递中文时出现中文乱码的解决方法
2016/07/25 Javascript
JS上传图片预览插件制作(兼容到IE6)
2016/08/07 Javascript
Vue+axios 实现http拦截及路由拦截实例
2017/04/25 Javascript
Vue框架中正确引入JS库的方法介绍
2017/07/30 Javascript
基于vue-element组件实现音乐播放器功能
2018/05/06 Javascript
javascript实现文本框标签验证的实例代码
2018/10/14 Javascript
Vue 引入AMap高德地图的实现代码
2019/04/29 Javascript
ionic4+angular7+cordova上传图片功能的实例代码
2019/06/19 Javascript
Javascript中的this,bind和that使用实例
2019/12/05 Javascript
vue从零实现一个消息通知组件的方法详解
2020/03/16 Javascript
微信小程序实现可长按移动控件
2020/11/01 Javascript
通过滑动翻页效果实现和移动端click事件问题
2021/01/26 Javascript
vscode自定义vue模板的实现
2021/01/27 Vue.js
python和shell监控linux服务器的详细代码
2018/06/22 Python
Python socket模块实现的udp通信功能示例
2019/04/10 Python
python 字典有序并写入json文件过程解析
2019/09/30 Python
Django3.0 异步通信初体验(小结)
2019/12/04 Python
Python手绘可视化工具cutecharts使用实例
2019/12/05 Python
使用CSS3 制作一个material-design 风格登录界面实例
2016/12/12 HTML / CSS
国窖1573广告词
2014/03/21 职场文书
毕业自我鉴定怎么写
2014/03/25 职场文书
大学生学习新党章思想汇报
2014/10/25 职场文书
单位接收证明格式
2015/06/18 职场文书
导游词之澳门妈祖庙
2019/12/19 职场文书
mybatis3中@SelectProvider传递参数方式
2021/08/04 Java/Android