diff --git a/gofaster/app/dist/renderer/js/index.js b/gofaster/app/dist/renderer/js/index.js index 129db2b..1f509fb 100644 --- a/gofaster/app/dist/renderer/js/index.js +++ b/gofaster/app/dist/renderer/js/index.js @@ -2686,10 +2686,54 @@ __webpack_require__.r(__webpack_exports__); this.resetForm() this.getClientIP() // 获取客户端IP this.refreshCaptcha() + this.loadSavedLoginInfo() // 加载保存的登录信息 } } }, methods: { + // 加载保存的登录信息 + loadSavedLoginInfo() { + try { + const savedLoginInfo = localStorage.getItem('gofaster-login-info') + if (savedLoginInfo) { + const loginInfo = JSON.parse(savedLoginInfo) + if (loginInfo.username && loginInfo.password) { + this.loginForm.username = loginInfo.username + this.loginForm.password = loginInfo.password + console.log('已自动填充保存的登录信息') + } + } + } catch (error) { + console.error('加载保存的登录信息失败:', error) + } + }, + + // 保存登录信息到本地存储 + saveLoginInfo() { + try { + // 检查用户设置中的"记住密码"选项 + const userSettings = localStorage.getItem('gofaster-settings') + if (userSettings) { + const settings = JSON.parse(userSettings) + if (settings.rememberPassword) { + const loginInfo = { + username: this.loginForm.username, + password: this.loginForm.password, + timestamp: Date.now() + } + localStorage.setItem('gofaster-login-info', JSON.stringify(loginInfo)) + console.log('已保存登录信息到本地存储') + } else { + // 如果用户选择不记住密码,清除保存的登录信息 + localStorage.removeItem('gofaster-login-info') + console.log('用户选择不记住密码,已清除保存的登录信息') + } + } + } catch (error) { + console.error('保存登录信息失败:', error) + } + }, + async handleLogin() { if (!this.isFormValid) { this.errorMessage = '请填写完整的登录信息' @@ -2709,6 +2753,9 @@ __webpack_require__.r(__webpack_exports__); client_ip: this.clientIP // 传入客户端IP }) + // 登录成功后保存登录信息 + this.saveLoginInfo() + // 登录成功 this.$emit('login-success', response) this.closeModal() @@ -8809,7 +8856,7 @@ __webpack_require__.r(__webpack_exports__); /******/ /******/ /* webpack/runtime/getFullHash */ /******/ (() => { -/******/ __webpack_require__.h = () => ("fd39911d33d0c6e1") +/******/ __webpack_require__.h = () => ("861ac4d425d88faa") /******/ })(); /******/ /******/ /* webpack/runtime/hasOwnProperty shorthand */ diff --git a/gofaster/app/src/renderer/components/LoginModal.vue b/gofaster/app/src/renderer/components/LoginModal.vue index 575c674..4a5e0a9 100644 --- a/gofaster/app/src/renderer/components/LoginModal.vue +++ b/gofaster/app/src/renderer/components/LoginModal.vue @@ -154,10 +154,54 @@ export default { this.resetForm() this.getClientIP() // 获取客户端IP this.refreshCaptcha() + this.loadSavedLoginInfo() // 加载保存的登录信息 } } }, methods: { + // 加载保存的登录信息 + loadSavedLoginInfo() { + try { + const savedLoginInfo = localStorage.getItem('gofaster-login-info') + if (savedLoginInfo) { + const loginInfo = JSON.parse(savedLoginInfo) + if (loginInfo.username && loginInfo.password) { + this.loginForm.username = loginInfo.username + this.loginForm.password = loginInfo.password + console.log('已自动填充保存的登录信息') + } + } + } catch (error) { + console.error('加载保存的登录信息失败:', error) + } + }, + + // 保存登录信息到本地存储 + saveLoginInfo() { + try { + // 检查用户设置中的"记住密码"选项 + const userSettings = localStorage.getItem('gofaster-settings') + if (userSettings) { + const settings = JSON.parse(userSettings) + if (settings.rememberPassword) { + const loginInfo = { + username: this.loginForm.username, + password: this.loginForm.password, + timestamp: Date.now() + } + localStorage.setItem('gofaster-login-info', JSON.stringify(loginInfo)) + console.log('已保存登录信息到本地存储') + } else { + // 如果用户选择不记住密码,清除保存的登录信息 + localStorage.removeItem('gofaster-login-info') + console.log('用户选择不记住密码,已清除保存的登录信息') + } + } + } catch (error) { + console.error('保存登录信息失败:', error) + } + }, + async handleLogin() { if (!this.isFormValid) { this.errorMessage = '请填写完整的登录信息' @@ -177,6 +221,9 @@ export default { client_ip: this.clientIP // 传入客户端IP }) + // 登录成功后保存登录信息 + this.saveLoginInfo() + // 登录成功 this.$emit('login-success', response) this.closeModal()