From 153e0035bab2a3d182209aab972a5b92a31f7159 Mon Sep 17 00:00:00 2001 From: MaysWind Date: Sat, 1 Jul 2023 23:10:49 +0800 Subject: [PATCH] reset state after leaving 2fa setting tab --- src/views/desktop/user/UserSettingsPage.vue | 9 ++++++++- .../user/settings/UserTwoFactorAuthSettingTab.vue | 15 +++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/views/desktop/user/UserSettingsPage.vue b/src/views/desktop/user/UserSettingsPage.vue index 25d6acec..1e6ca320 100644 --- a/src/views/desktop/user/UserSettingsPage.vue +++ b/src/views/desktop/user/UserSettingsPage.vue @@ -29,7 +29,7 @@ - + @@ -69,6 +69,13 @@ export default { dataManagementSetting: mdiDatabaseCogOutline } }; + }, + watch: { + 'activeTab': function (newValue, oldValue) { + if (oldValue === 'twoFactorSetting' && newValue !== 'twoFactorSetting') { + this.$refs.twoFactorSettingTab.reset(); + } + } } } diff --git a/src/views/desktop/user/settings/UserTwoFactorAuthSettingTab.vue b/src/views/desktop/user/settings/UserTwoFactorAuthSettingTab.vue index 7498a600..c720c513 100644 --- a/src/views/desktop/user/settings/UserTwoFactorAuthSettingTab.vue +++ b/src/views/desktop/user/settings/UserTwoFactorAuthSettingTab.vue @@ -116,6 +116,9 @@ import { } from '@mdi/js'; export default { + expose: [ + 'reset' + ], data() { return { status: null, @@ -165,6 +168,18 @@ export default { } }, methods: { + reset() { + this.new2FASecret = ''; + this.new2FAQRCode = ''; + this.currentPassword = ''; + this.isCurrentPasswordVisible = false; + this.currentPasscode = ''; + this.currentBackupCode = ''; + this.enabling = false; + this.enableConfirming = false; + this.disabling = false; + this.regenerating = false; + }, enable() { const self = this;