diff --git a/src/utils/jsencrypt.js b/src/utils/jsencrypt.js
new file mode 100644
index 00000000..78d95234
--- /dev/null
+++ b/src/utils/jsencrypt.js
@@ -0,0 +1,30 @@
+import JSEncrypt from 'jsencrypt/bin/jsencrypt.min'
+
+// 密钥对生成 http://web.chacuo.net/netrsakeypair
+
+const publicKey = 'MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKoR8mX0rGKLqzcWmOzbfj64K8ZIgOdH\n' +
+ 'nzkXSOVOZbFu/TJhZ7rFAN+eaGkl3C4buccQd/EjEsj9ir7ijT7h96MCAwEAAQ=='
+
+const privateKey = 'MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAqhHyZfSsYourNxaY\n' +
+ '7Nt+PrgrxkiA50efORdI5U5lsW79MmFnusUA355oaSXcLhu5xxB38SMSyP2KvuKN\n' +
+ 'PuH3owIDAQABAkAfoiLyL+Z4lf4Myxk6xUDgLaWGximj20CUf+5BKKnlrK+Ed8gA\n' +
+ 'kM0HqoTt2UZwA5E2MzS4EI2gjfQhz5X28uqxAiEA3wNFxfrCZlSZHb0gn2zDpWow\n' +
+ 'cSxQAgiCstxGUoOqlW8CIQDDOerGKH5OmCJ4Z21v+F25WaHYPxCFMvwxpcw99Ecv\n' +
+ 'DQIgIdhDTIqD2jfYjPTY8Jj3EDGPbH2HHuffvflECt3Ek60CIQCFRlCkHpi7hthh\n' +
+ 'YhovyloRYsM+IS9h/0BzlEAuO0ktMQIgSPT3aFAgJYwKpqRYKlLDVcflZFCKY7u3\n' +
+ 'UP8iWi1Qw0Y='
+
+// 加密
+export function encrypt(txt) {
+ const encryptor = new JSEncrypt()
+ encryptor.setPublicKey(publicKey) // 设置公钥
+ return encryptor.encrypt(txt) // 对数据进行加密
+}
+
+// 解密
+export function decrypt(txt) {
+ const encryptor = new JSEncrypt()
+ encryptor.setPrivateKey(privateKey) // 设置私钥
+ return encryptor.decrypt(txt) // 对数据进行解密
+}
+
diff --git a/src/views/login.vue b/src/views/login.vue
index d422e46d..afb47196 100644
--- a/src/views/login.vue
+++ b/src/views/login.vue
@@ -50,6 +50,9 @@
+ {{showMessage ? "记住手机号" : "记住密码"}}
+
忘记密码
+
import { getCodeImg, getSmsCode } from "@/api/login";
import Cookies from "js-cookie";
+import { encrypt, decrypt } from "../utils/jsencrypt";
//引用wx sdk
import wx from "weixin-js-sdk";
export default {
@@ -123,6 +127,7 @@ export default {
uuid: null, //识别uuid
mobile: null, //手机号
smsCode: null, //短信验证码
+ rememberMe:false
},
loading: false,
codeUrl: "", //验证码
@@ -134,6 +139,7 @@ export default {
created() {
this.getCode();
this.height = document.body.clientHeight
+ this.getCookie();
//调用微信公众号方法
// wx.config({
// debug: true, // 开启调试模式,
@@ -152,6 +158,17 @@ export default {
this.codeUrl = "data:image/gif;base64," + res.img;
});
},
+ getCookie() {
+ const username = Cookies.get("username");
+ const password = Cookies.get("password");
+ const rememberMe = Cookies.get("rememberMe");
+ this.formData = {
+ username: username === undefined ? this.formData.username : username,
+ password:
+ password === undefined ? this.formData.password : decrypt(password),
+ rememberMe: rememberMe === undefined ? false : Boolean(rememberMe),
+ };
+ },
getSmsCode() {
if (!this.computeTime) {
let myreg = /^[1][3,4,5,7,8,9][0-9]{9}$/;
@@ -203,6 +220,15 @@ export default {
this.loading = false;
});
} else {
+ if (this.formData.rememberMe) {
+ Cookies.set("username", this.formData.username, { expires: 30 });
+ Cookies.set("password", encrypt(this.formData.password), { expires: 30 });
+ Cookies.set("rememberMe", this.formData.rememberMe, { expires: 30 });
+ } else {
+ Cookies.remove("username");
+ Cookies.remove("password");
+ Cookies.remove("rememberMe");
+ }
//账号密码登录
if (this.formData.username == "") {
this.$dialog.alert({
diff --git a/src/views/onlineHomeLogin.vue b/src/views/onlineHomeLogin.vue
index e0e94880..9acafcc9 100644
--- a/src/views/onlineHomeLogin.vue
+++ b/src/views/onlineHomeLogin.vue
@@ -30,7 +30,9 @@
-
忘记密码
+
{{showMessage ? "记住手机号" : "记住密码"}}
+
忘记密码
+
登录
短信验证码登录
@@ -193,6 +195,7 @@