当前位置: 首页 > news >正文

vue实现简单的记住密码功能

第一步:

在表单内中引入一个"记住密码"选择框

<el-checkbox v-model="Form.remenber">记住密码</el-checkbox>
<div class="login_box">
      <el-form ref="Form" :model="Form" class="form_in" :rules="rules">
        <!--账号-->
        <el-form-item prop="username">
          <el-input v-on:input="change" v-model="Form.username" prefix-icon="el-icon-user-solid" placeholder="请输入账号"></el-input>
        </el-form-item>
        <!--密码-->
        <el-form-item prop="password">
          <el-input v-model="Form.password" prefix-icon="el-icon-lock" placeholder="请输入密码" show-password></el-input>
        </el-form-item>
        <!--记住密码-->
        <el-checkbox v-model="Form.remenber">记住密码</el-checkbox>
        <!--按钮-->
        <el-form-item class="form_button">
          <el-button type="primary" plain @click="Login">登录</el-button>
          <el-button type="info" plain @click="resetLoginForm">重置</el-button>
        </el-form-item>
      </el-form>
    </div>

js

data() {
    return {
      Form: {
        username: '',
        password: '',
        remenber:true,
      },

第二步:

在登录成功的方法中插入

//将登录成功的状态存入缓存
            if (this.Form.remenber) {
              let obj = JSON.stringify(form)
              //如果选择记住密码,将账号和密码存缓存
              window.localStorage.setItem("form", obj)
            }

将信息存入本地缓存,虽然好像有些不安全

第三步:

在账号输入框中,绑定监听函数

//监听账号输入操作,如果输入账号,自动输入密码
   change:function (){
     let username = this.Form.username
     let form= JSON.parse(localStorage.getItem("form"))
     if (username === "admin"){
       this.Form.password = form.password
     }
   }

这样就可以在选择记住密码之后,输入正确账号直接输入密码了
在这里插入图片描述

相关文章:

  • element设置表格el-table表头的颜色
  • vue+django跨域问题的学习
  • django清空数据库
  • 将json字符串转换成json对象
  • 小程序节流,防止多次点击
  • django models进行倒序
  • 微信小程序的动态显示字体颜色
  • django在原models新增字段
  • querySet如何转换成json
  • promise和Async/Await的学习
  • github学习
  • CSS渐变学习
  • css实现动态箭头
  • 解决apache服务器端window调用officeword组件时出现DCOM权限的问题
  • 学习django数据库的数据的统计筛选
  • php的引用
  • [PHP内核探索]PHP中的哈希表
  • 【162天】黑马程序员27天视频学习笔记【Day02-上】
  • JavaScript标准库系列——Math对象和Date对象(二)
  • Lsb图片隐写
  • nodejs实现webservice问题总结
  • PyCharm搭建GO开发环境(GO语言学习第1课)
  • thinkphp5.1 easywechat4 微信第三方开放平台
  • Unix命令
  • 基于Mobx的多页面小程序的全局共享状态管理实践
  • 基于webpack 的 vue 多页架构
  • 来,膜拜下android roadmap,强大的执行力
  • 如何借助 NoSQL 提高 JPA 应用性能
  • 数据科学 第 3 章 11 字符串处理
  • 学习笔记DL002:AI、机器学习、表示学习、深度学习,第一次大衰退
  • 验证码识别技术——15分钟带你突破各种复杂不定长验证码
  • 一、python与pycharm的安装
  • 用 Swift 编写面向协议的视图
  • 与 ConTeXt MkIV 官方文档的接驳
  • #HarmonyOS:基础语法
  • %3cscript放入php,跟bWAPP学WEB安全(PHP代码)--XSS跨站脚本攻击
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (分享)自己整理的一些简单awk实用语句
  • (三)c52学习之旅-点亮LED灯
  • (实战篇)如何缓存数据
  • .NET 8.0 发布到 IIS
  • .NET Core WebAPI中封装Swagger配置
  • .net 程序发生了一个不可捕获的异常
  • .NET 服务 ServiceController
  • .net 获取url的方法
  • .NET/C# 编译期能确定的字符串会在字符串暂存池中不会被 GC 垃圾回收掉
  • /dev/VolGroup00/LogVol00:unexpected inconsistency;run fsck manually
  • []C/C++读取串口接收到的数据程序
  • [BZOJ 4129]Haruna’s Breakfast(树上带修改莫队)
  • [BZOJ3211]:花神游历各国(小清新线段树)
  • [CSS]CSS 的背景
  • [C语言]——内存函数
  • [dts]Device Tree机制
  • [ffmpeg] 定制滤波器
  • [FTP]pureftp部署和优化