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 相关文章推荐
LazyLoad 延迟加载(按需加载)
May 31 Javascript
理解Javascript_11_constructor实现原理
Oct 18 Javascript
JS写的贪吃蛇游戏(个人练习)
Jul 08 Javascript
jquery制作多功能轮播图插件
Apr 02 Javascript
基于javascript html5实现3D翻书特效
Mar 14 Javascript
Highcharts学习之数据列
Aug 03 Javascript
jQuery之动画效果大全
Nov 09 Javascript
微信小程序实现带刻度尺滑块功能
Mar 29 Javascript
深入理解JavaScript创建对象的多种方式以及优缺点
Jun 01 Javascript
zTree树形菜单交互选项卡效果的实现方法
Dec 25 Javascript
VUE项目中加载已保存的笔记实例方法
Sep 14 Javascript
webpack+vue.js构建前端工程化的详细教程
May 10 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
为了这两部电子管收音机,买了6套全新电子管和10粒刻度盘灯泡
2021/03/02 无线电
ubuntu 编译安装php 5.3.3+memcache的方法
2010/08/05 PHP
深入PHP数据缓存的使用说明
2013/05/10 PHP
php上传中文文件名乱码问题处理方案
2015/02/03 PHP
基于jQuery实现最基本的淡入淡出效果实例
2015/02/02 Javascript
简易的投票系统以及js刷票思路和方法
2015/04/07 Javascript
JavaScript浮点数及运算精度调整详解
2016/10/21 Javascript
SelecT下拉框选中和取值的解决方法
2016/11/22 Javascript
javascript动画之磁性吸附效果篇
2016/12/09 Javascript
Vue路由切换时的左滑和右滑效果示例
2018/05/29 Javascript
原生JS实现逼真的图片3D旋转效果详解
2019/02/16 Javascript
Vue中通过Vue.extend动态创建实例的方法
2019/08/13 Javascript
jquery检测上传文件大小示例
2020/04/26 jQuery
Python yield 使用浅析
2015/05/28 Python
在Linux命令行终端中使用python的简单方法(推荐)
2017/01/23 Python
Python生成密码库功能示例
2017/05/23 Python
Python二叉树定义与遍历方法实例分析
2018/05/25 Python
Python函数返回不定数量的值方法
2019/01/22 Python
将python文件打包成EXE应用程序的方法
2019/05/22 Python
python实现音乐播放器 python实现花框音乐盒子
2020/02/25 Python
Django实现随机图形验证码的示例
2020/10/15 Python
html5如何在Canvas中实现自定义路径动画示例
2017/09/18 HTML / CSS
马来西亚网上购物平台:ezbuy
2018/02/13 全球购物
德国高品质男装及配饰商城:Cultizm(Raw Denim原色牛仔裤)
2018/04/16 全球购物
Bonami斯洛伐克:购买家具和家居饰品
2019/07/02 全球购物
数据库面试要点基本概念
2013/10/31 面试题
vue项目实现分页效果
2021/03/24 Vue.js
高中毕业的自我鉴定
2013/12/09 职场文书
大学系主任推荐信范文
2013/12/24 职场文书
财务科科长岗位职责
2014/03/10 职场文书
党的群众路线对照检查材料
2014/08/27 职场文书
领导个人查摆剖析材料
2014/10/29 职场文书
大学生党员自我评价
2015/03/04 职场文书
大学自主招生自荐信(2016精选篇)
2016/01/28 职场文书
SpringBoot读取Resource下文件的4种方法
2021/07/02 Java/Android
Nginx 路由转发和反向代理location配置实现
2021/11/11 Servers