From 2fb65c041d05b24ac8df6379f234f7448d847b47 Mon Sep 17 00:00:00 2001 From: vincentlu <t1341870251@gmail.com> Date: 星期五, 14 二月 2025 11:14:44 +0800 Subject: [PATCH] # --- rsf-admin/src/api/auth/index.js | 5 +---- rsf-admin/src/page/login/Register.jsx | 21 ++++++++++++++------- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/rsf-admin/src/api/auth/index.js b/rsf-admin/src/api/auth/index.js index 9642a8b..f5c19dc 100644 --- a/rsf-admin/src/api/auth/index.js +++ b/rsf-admin/src/api/auth/index.js @@ -44,10 +44,7 @@ export async function updateUserInfo(_params) { const res = await request.post('/auth/user', _params); - if (res.data.code === 200) { - return res.data; - } - return Promise.reject(new Error(res.data.msg)); + return res.data; } export async function requestResetPassword(_params) { diff --git a/rsf-admin/src/page/login/Register.jsx b/rsf-admin/src/page/login/Register.jsx index f8e840d..c4169db 100644 --- a/rsf-admin/src/page/login/Register.jsx +++ b/rsf-admin/src/page/login/Register.jsx @@ -66,9 +66,13 @@ const { code, msg, data } = res; if (code === 200) { notify(msg, { type: 'success', messageArgs: { _: msg } }); + + const timestamp = Math.floor(Date.now() / 1000); + const expirationTime = timestamp + 60; + localStorage.setItem('codeExpirationTime', expirationTime); + setIsCounting(true); setCountdown(60); - localStorage.setItem('codeCountdown', 60); } else if (code === 10005 || code === 10006) { setError('email', { message: msg @@ -85,20 +89,23 @@ // countdown useEffect(() => { - const savedCountdown = localStorage.getItem('codeCountdown'); - if (savedCountdown && !isCounting) { - setCountdown(Number(savedCountdown)); - setIsCounting(true); + const codeExpirationTime = localStorage.getItem('codeExpirationTime'); + if (codeExpirationTime) { + const currentTimestamp = Math.floor(Date.now() / 1000); + const remainingTime = codeExpirationTime - currentTimestamp; + if (remainingTime > 0) { + setCountdown(remainingTime); + setIsCounting(true); + } } const interval = setInterval(() => { if (isCounting && countdown > 0) { setCountdown(prev => prev - 1); - localStorage.setItem('codeCountdown', countdown - 1); } else if (countdown <= 0) { clearInterval(interval); setIsCounting(false); - localStorage.removeItem('codeCountdown'); + localStorage.removeItem('codeExpirationTime'); } }, 1000); -- Gitblit v1.9.1