vue通过cookie获取用户登录信息的思路详解


Posted in Javascript onOctober 30, 2018

思路

  • 进入页面
  • 若未登录,跳转至登陆页面
  • 若已登录,从cookie中获取用户信息,并执行后续操作

2. 登录页面,存入cookie(setCookie)

import {setCookie,getCookie}from 'src/js/cookieUtil'
 methods: {
  async cheack_n_p () {
   if( this.checkCode === this.pwd) {
    this.loginData = await getUserInfo(this.uname, this.pwd, this.adminPhone);
    if (this.loginData.res !== 0) {
     setCookie('userName',this.uname);
     setCookie('userPwd',this.pwd,);
     setCookie('phone',this.uname);
     setCookie('userId',this.loginData.obj.id);
     setCookie('userType',this.loginData.obj.userType);
     setCookie('adminPhone',this.adminPhone);
//    this.$router.go(-1);
     this.$router.replace('/');
    } else {
     alert("验证码错误!")
    }
   }
  },
  //验证手机号码部分
  async sendcode(){
   var pattern = /^0{0,1}(1[0-9][0-9]|15[7-9]|153|156|18[7-9])[0-9]{8}$/,
    str =this.uname;
   if (!pattern.test(str)) {
    alert('请正确输入手机号!');
    return ;
   }
   this.time=60;
   this.disabled=true;
   this.timer();
   this.checkCode = (await getUserPhoneCode(this.uname)).resMsg;
   // this.checkCode = '123456';
   console.log( this.checkCode)
  },
  timer:function () {
   if (this.time > 0) {
    this.time--;
//         console.log(this.time);
    this.btntxt=this.time+"s后重新获取";
    setTimeout(this.timer, 1000);
   } else{
    this.time=0;
    this.btntxt="获取验证码";
    this.disabled=false;
   }
  }
 },

2. 页面判断

import {setCookie,getCookie}from 'src/js/cookieUtil'
 mounted () {
  if (this.isLogin==undefined||this.isLogin=="") {
   this.$router.replace('/login');
  } else {
   // 执行后续操作
   this.phone = getCookie("phone");
   }
 },
 computed: {
  isLogin () {
   // return this.$store.getters.getLogin;
   this.userId = getCookie("userId");
   // console.log(this.userId);
   return this.userId;
  }
 },

3. cookieUtil(setCookie,getCookie)

/**
 * Created by Schon on 2018/9/13 0013.
 */
//设置cookie
export function setCookie(key,value) {
 var exdate = new Date(); //获取时间
 exdate.setTime(exdate.getTime() + 24 * 60 * 60 * 1000 * 36500); //保存的天数,我这里写的是100年
 //字符串拼接cookie
 window.document.cookie = key + "=" + value + ";path=/;expires=" + exdate.toGMTString();
};
//读取cookie
export function getCookie(param) {
 var c_param = '';
 if (document.cookie.length > 0) {
  var arr = document.cookie.split('; '); //这里显示的格式需要切割一下自己可输出看下
  for (var i = 0; i < arr.length; i++) {
   var arr2 = arr[i].split('='); //再次切割
   //判断查找相对应的值
   if (arr2[0] == param) {
    c_param = arr2[1];
    //保存到保存数据的地方
   }
  }
  return c_param;
 }
};
function padLeftZero (str) {
 return ('00' + str).substr(str.length);
};

总结

以上所述是小编给大家介绍的vue通过cookie获取用户登录信息的思路详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
让getElementsByName适应IE和firefox的方法
Sep 24 Javascript
javascript html 静态页面传参数
Apr 10 Javascript
jquery插件jTimer(jquery定时器)使用方法
Dec 23 Javascript
jQuery使用addClass()方法给元素添加多个class样式
Mar 26 Javascript
不用一句js代码初始化组件
Jan 27 Javascript
js带闹铃功能的倒计时代码
Sep 29 Javascript
Java与JavaScript中判断两字符串是否相等的区别
Mar 13 Javascript
JavaScript基于replace+正则实现ES6的字符串模版功能
Apr 25 Javascript
JQuery.dataTables表格插件添加跳转到指定页
Jun 09 jQuery
vuejs实现本地数据的筛选分页功能思路详解
Nov 15 Javascript
vue如何安装使用Quill富文本编辑器
Sep 21 Javascript
vue-cli构建vue项目的步骤详解
Jan 27 Javascript
微信小程序实现左滑修改、删除功能
Oct 19 #Javascript
小程序实现列表删除功能
Oct 30 #Javascript
require.js 加载过程与使用方法介绍
Oct 30 #Javascript
小程序实现左滑删除功能
Oct 30 #Javascript
提升node.js中使用redis的性能遇到的问题及解决方法
Oct 30 #Javascript
小程序云开发部署攻略(图文教程)
Oct 30 #Javascript
傻瓜式解读koa中间件处理模块koa-compose的使用
Oct 30 #Javascript
You might like
《被神捡到的男人》动画化计划进行中!
2020/03/06 日漫
PHP STRING 陷阱原理说明
2010/07/24 PHP
获取PHP警告错误信息的解决方法
2013/06/03 PHP
JavaScript与HTML结合的基本使用方法整理
2015/10/12 PHP
PHP与jquery实时显示网站在线人数实例详解
2016/12/02 PHP
PHP数据库操作二:memcache用法分析
2017/08/16 PHP
jQuery与ExtJS之选择实例分析
2010/08/19 Javascript
Javascript+CSS实现影像卷帘效果思路及代码
2014/10/20 Javascript
javascript 获取浏览器版本
2015/01/21 Javascript
jQuery实现鼠标悬停背景翻转的黑色导航菜单代码
2015/09/14 Javascript
常见JS验证脚本汇总
2015/12/01 Javascript
js判断主流浏览器类型和版本号的简单实现代码
2016/05/26 Javascript
基于jQuery的checkbox全选问题分析
2016/11/18 Javascript
谈谈VUE种methods watch和compute的区别和联系
2017/08/01 Javascript
基于vue-video-player自定义播放器的方法
2018/03/21 Javascript
微信小程序商品详情页的底部弹出框效果
2020/11/16 Javascript
解决iView Table组件宽度只变大不变小的问题
2020/11/13 Javascript
DJANGO-ALLAUTH社交用户系统的安装配置
2014/11/18 Python
python通过BF算法实现关键词匹配的方法
2015/03/13 Python
Python fileinput模块使用实例
2015/05/28 Python
深入浅析ImageMagick命令执行漏洞
2016/10/11 Python
利用pyinstaller将py文件打包为exe的方法
2018/05/14 Python
在自动化中用python实现键盘操作的方法详解
2019/07/19 Python
Python函数__new__及__init__作用及区别解析
2020/08/31 Python
CSS3中利用animation属性创建雪花飘落特效
2014/05/14 HTML / CSS
CSS3 按钮边框动画的实现
2020/11/12 HTML / CSS
阿里旅行:飞猪
2017/01/05 全球购物
美国酒店控股公司:Choice Hotels
2018/06/15 全球购物
会计应届生的自荐信
2013/12/13 职场文书
单位刻章介绍信范文
2014/01/11 职场文书
企业总经理职责
2014/02/02 职场文书
户外婚礼策划方案
2014/02/08 职场文书
工作违纪检讨书范文
2015/01/26 职场文书
同事欢送会致辞
2015/07/31 职场文书
教师廉政准则心得体会
2016/01/20 职场文书
深入解析NumPy中的Broadcasting广播机制
2021/05/30 Python