16. Vue-element-template记住密码

news/2024/11/22 22:06:23/

Vue-element-template 记住密码

1. 在登录页面添加记住密码按钮

  1. 新增参数 rememberMe

    # resources/src/views/login/index.vueloginForm: {username: 'admin',password: '123456',rememberMe: false},
    
  2. 添加复选框

    # resources/src/views/login/index.vue<div style="margin-bottom: 20px;"><el-checkbox v-model="loginForm.rememberMe"><span style="color: #fff; font-size: 12px;"> 记住我 </span></el-checkbox></div>
    
  3. 提交参数

    # resources/src/views/login/index.vuehandleLogin() {…………不用改}
    

2. 在 user module 里改造login方法

  1. 获取 rememberMe 参数, 传给 setToken 方法

    # resources/src/store/modules/user.jslogin({ commit }, userInfo) {const { username, password, rememberMe } = userInforeturn new Promise((resolve, reject) => {login({ username: username.trim(), password: password }).then(response => {const { data } = responsecommit('SET_TOKEN', data.token)setToken(data.token, rememberMe)resolve()}).catch(error => {reject(error)})})},
    
  2. 修改setToken方法, 保存到localStorage

    #resources/src/utils/auth.jsexport function setToken(token, persistent = false) {if (persistent) {Cookies.set(TokenKey, token);return localStorageSetItem(TokenKey, token)} else {return Cookies.set(TokenKey, token)}
    }export function localStorageSetItem(key, value) {const curTime = new Date().getTime()localStorage.setItem(key, JSON.stringify({data: value, time: curTime}))
    }
    
  3. 修改 getToken 和 removeToken

    #resources/src/utils/auth.js
    const TokenKey = 'AUTH-TOKEN';
    const EXP = 30;export function getToken() {let token = Cookies.get(TokenKey)if (!token) {token = localStorageGetItem(TokenKey, EXP)}return token
    }export function removeToken() {localStorageRemoveItem(TokenKey)return Cookies.remove(TokenKey)
    }export function localStorageGetItem(key, exp) {const data = localStorage.getItem(key)const dataObj = JSON.parse(data)if (dataObj === null || new Date().getTime() - dataObj.time > exp * 864e+5) {return null} else {return dataObj.data}
    }export function localStorageRemoveItem(key) {localStorage.removeItem(key)
    }
    

3. 测试

➜  Genes-Admin git:(ogenes) ✗ npm run watch

image-20220901102914341

image-20220901102937796

4. 定义相关文案的翻译,修改默认文案

#resources/src/i18n/langs/en/login.js
#resources/src/i18n/langs/zh_CN/login.js
#resources/src/i18n/langs/zh_HK/login.js之前已经翻译过
export const login = {……rememberMe: '記住我',……
}
#<span style="color: #000; font-size: 12px;"> 记住我 </span>
<span style="color: #000; font-size: 12px;"> {{ $t("loginForm.rememberMe") }} </span>

http://www.ppmy.cn/news/105611.html

相关文章

【系统学习】Java基础1之多线程

前言 被公司换岗一年多了&#xff0c;从Linux C换到了java开发&#xff0c;奈何大环境不好&#xff0c;半吊子经验找不到好工作。 接触了spring cloud, spring boot k8s等许多新的知识。已经开发Java生态相关项目已一年半&#xff0c;但都止步于用的阶段&#xff0c;自知毫无竞…

【数据挖掘与商务智能决策】第十六章 关联分析算法

16.1.3 Apriori算法的代码实现 1.apyori库代码实现关联规则 # apyori库的安装&#xff1a;将下面代码注释取消后运行 # !pip install apyoritransactions [[A, B, C], [A, B], [B, C], [A, B, C, D], [B, C, D]]from apyori import apriori rules apriori(transactions, mi…

delmia机器人建模与装配

1 可以用catia中的模型或其他三维建模软件中的模型转化为step格式即可 2 在demlia中打开 3 打开单个零件保存为cgr格式 对机械臂所有零件都做同样的转化 4 新建装配设计&#xff0c;并导入带有坐标的零件 将转化后的零件都选中导入即是装配好的 5 将模式修改为device buildin…

华三杯H3C 网络知识学习笔记(1)

通俗易懂的IP地址、子网掩码、默认网关、DNS服务器 https://blog.csdn.net/belongtocode/article/details/106453395 一文搞懂网络知识&#xff0c;IP、子网掩码、网关、DNS、端口号 https://zhuanlan.zhihu.com/p/65226634 图解 | 原来这就是网络 https://www.cnblogs.com/f…

华为OD机试真题B卷 Java 实现【求小球落地5次后所经历的路程和第5次反弹的高度】,附详细解题思路

一、题目描述 假设一个球从任意高度自由落下&#xff0c;每次落地后反跳回原高度的一半; 再落下, 求它在第5次落地时&#xff0c;共经历多少米?第5次反弹多高&#xff1f; 数据范围&#xff1a;输入的小球初始高度满足 1 \le n \le 1000 \1≤n≤1000 &#xff0c;且保证是一…

面试高频—TCP/IP十大问题—程序员必备基础素养

目录 导读 TCP/IP十个问题 一、TCP/IP模型 二、数据链路层 三、网络层 四、ping 五、Traceroute 六、TCP/UDP 七、DNS 八、TCP连接的建立与终止 九、TCP流量控制 十、TCP拥塞控制 &#x1f4da; 相关参考资料 导读 本文整理了一些TCP/IP协议簇中需要必知必会的十…

为什么现在定制开发APP的时间越来越长?

最近几年&#xff0c; APP开发的时间越来越长&#xff0c;让很多企业都难以接受。对于不少企业来说&#xff0c;他们需要花很长时间才能完成 APP定制开发&#xff0c;不仅耗费了大量的时间和精力&#xff0c;而且开发出来的产品还不一定能达到他们想要的效果。这让他们很头疼。…

Python3数据分析与挖掘建模(5)数据分类与分析

1. 数据分类 数据分类可以根据不同的度量水平进行分类&#xff0c;其中常见的分类方法包括定类、定序、定距和定比。 &#xff08;1&#xff09;定类&#xff08;Nominal&#xff09;&#xff1a;定类是最基本的数据分类方式&#xff0c;用于对数据进行无序的分类。在定类数据…