Vue中保存用户登录状态实例代码


Posted in Javascript onJune 07, 2017

首先我们假设,这里的登录组件(register.vue)是App.vue组件的子组件,是通过路由进入登录组件的。

登录组件中用户点击登录后,后台会传过来一个用户名,我的App.vue组件中需要拿到这个用户名,并将上面的“登录注册”字样变为“用户名”。

为了保证用户刷新后用户名不会消失,这里我用到了sessionStorage

代码如下:

register.vue中用户点击登录触发signIn方法

signIn(){
    this.formData = $(".form").serialize();
    var that = this;
    this.$http.get("/api/user", this.formData)
     .then(response => {
      that.userName = response.data.data.user.userName;
      that.userHead = response.data.data.userHead;
      that.$emit('userSignIn', that.userName);
     })
     .catch(error => {
      console.log(error);
     });
   }

这里为了测试我直接mock的数据,真实情况应该是this.$http.post

这里的重点是那句

that.$emit('userSignIn', that.userName);

向父组件(App.vue)传值

App.vue代码HTML

<keep-alive>
   <router-view @userSignIn="userSignIn"></router-view>
</keep-alive>

App.vue代码JS

export default {

 data(){
  return{
   userName: sessionStorage.userName
  }
 },

 methods:{
  //子组件(register)将用户名传过来
  userSignIn(userName){
   sessionStorage.userName = userName;
   this.userName = sessionStorage.userName;
  }
 }
}

这样父组件就可以使用用户名,保持了登录状态,并且因为使用了sessionStorage,刷新页面也可以保持。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
!DOCTYPE声明对JavaScript的影响分析
Apr 12 Javascript
location.href语句与火狐不兼容的问题
Jul 04 Javascript
jquery $.fn $.fx是什么意思有什么用
Nov 04 Javascript
利用js(jquery)操作Cookie的方法说明
Dec 19 Javascript
基于javascript实现表格的简单操作
May 21 Javascript
javascript实现根据汉字获取简拼
Sep 25 Javascript
Bootstrap组合上、下拉框简单实现代码
Mar 06 Javascript
angularJS模态框$modal实例代码
May 27 Javascript
详解vue渲染从后台获取的json数据
Jul 06 Javascript
vue中Element-ui 输入银行账号每四位加一个空格的实现代码
Sep 14 Javascript
微信小程序在地图选择地址并返回经纬度简单示例
Dec 03 Javascript
小程序使用wxs解决wxml保留2位小数问题
Dec 13 Javascript
jquery dataTable 后台加载数据并分页实例代码
Jun 07 #jQuery
jQuery用户头像裁剪插件cropbox.js使用详解
Jun 07 #jQuery
使用vue和datatables进行表格的服务器端分页实例代码
Jun 07 #Javascript
Angular 4 指令快速入门教程
Jun 07 #Javascript
jstree单选功能的实现方法
Jun 07 #Javascript
JQueryMiniUI按照时间进行查询的实现方法
Jun 07 #jQuery
webpack打包单页面如何引用的js
Jun 07 #Javascript
You might like
字母顺序颠倒而单词顺序不变的php代码
2010/08/08 PHP
mysql 查询指定日期时间内sql语句实现原理与代码
2012/12/16 PHP
JavaScript/jQuery 表单美化插件小结
2012/02/14 Javascript
说说JSON和JSONP 也许你会豁然开朗
2012/09/02 Javascript
JS对象转换为Jquery对象实现代码
2013/12/29 Javascript
JS使用正则截取两个字符串之间的字符串实现方法详解
2017/01/06 Javascript
javascript 中iframe高度自适应(同域)实例详解
2017/05/16 Javascript
js实现省市级联效果分享
2017/08/10 Javascript
自定义类似于jQuery UI Selectable 的Vue指令v-selectable
2017/08/23 jQuery
利用node.js如何创建子进程详解
2017/12/09 Javascript
vue v-model实现自定义样式多选与单选功能
2018/07/05 Javascript
vue实现点击隐藏与显示实例分享
2019/02/13 Javascript
layui树形菜单动态遍历的例子
2019/09/23 Javascript
实例讲解React 组件生命周期
2020/07/08 Javascript
[02:10]探秘浦东源深体育馆 DOTA2 Supermajor不见不散
2018/05/17 DOTA
python操作ie登陆土豆网的方法
2015/05/09 Python
Python中的复制操作及copy模块中的浅拷贝与深拷贝方法
2016/07/02 Python
python中的计时器timeit的使用方法
2017/10/20 Python
Python安装图文教程 Pycharm安装教程
2018/03/27 Python
python数字图像处理之高级形态学处理
2018/04/27 Python
利用Python如何制作好玩的GIF动图详解
2018/07/11 Python
Python列表list排列组合操作示例
2018/12/18 Python
python,Django实现的淘宝客登录功能示例
2019/06/12 Python
python批量将excel内容进行翻译写入功能
2019/10/10 Python
NumPy统计函数的实现方法
2020/01/21 Python
Python使用struct处理二进制(pack和unpack用法)
2020/11/12 Python
Python 实现进度条的六种方式
2021/01/06 Python
亚马逊加拿大网站:Amazon.ca
2020/01/06 全球购物
高中生学习的自我评价
2013/12/14 职场文书
中医专业职业生涯规划书范文
2014/01/04 职场文书
大家检讨书5000字
2014/02/03 职场文书
青年文明号复核材料
2014/02/11 职场文书
2014年幼儿园个人工作总结
2014/11/10 职场文书
餐饮服务员岗位职责
2015/02/09 职场文书
Python中else的三种使用场景
2021/06/16 Python
关于redisson缓存序列化几枚大坑说明
2021/08/04 Redis