登录 记住密码

vue+iview/element 一般用来快速搭建后台管理系统,登录页的记住密码功能也是必不可少的。

记住密码快速登录功能(iview ui):

思路:首次登录,记住密码,将密码存储到cookie中,退出登录,下次进来的时候,读取cookie登录。

1.<Checkbox v-model="autoLogin" size="large">记住密码</Checkbox> //v-model 绑定的是多选框的初始状态(是否选中) autoLogin 为 true

2.点击页面中的登录按钮后,判断是否选中了记住密码选项

if (this.autoLogin) { //如果选中了记住密码的选项

this.setCookie(username, password, 7);  //则去设置cookie,username是要提交的用户名,password是密码,7是要存储的天数

} else {
this.clearCookie() //如果没有选中记住密码,那就清除cookie

}

3.写有关设置,清除,读取的函数

//设置cookie

setCookie(c_name, c_pwd, exdays) {
  var exdate = new Date(); //获取时间
  exdate.setTime(exdate.getTime() + 24 * 60 * 60 * 1000 * exdays); //保存的天数
  //字符串拼接cookie
  window.document.cookie =
    "userName" + "=" + c_name + ";path=/;expires=" + exdate.toGMTString();   
     //expires是设置cookie的过期时间,toGMTString是将日期转为GMT的字符串进行拼接
   window.document.cookie =
    "password" + "=" + c_pwd + ";path=/;expires=" + exdate.toGMTString();
},

//读取cookie  将用户名和密码回显到input框中喽~~

getCookie: function() {
  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] == "userName") {
        this.username = arr2[1]; //保存到保存数据的地方 (data中)

      } else if (arr2[0] == "password") {
        this.password = arr2[1];

      }

    }

    console.log(this.username,this.password)

  }

},

//清除cookie

clearCookie: function() {
  this.setCookie("", "", -1); //修改2值都为空,天数为负1天就好了

}

4.效果图


1629967693(1).png

原文链接:https://blog.csdn.net/qq_38372917/article/details/100734871

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容