diff --git a/web/src/components/auth/PasswordResetConfirm.js b/web/src/components/auth/PasswordResetConfirm.js index e56a9b1a..e799583f 100644 --- a/web/src/components/auth/PasswordResetConfirm.js +++ b/web/src/components/auth/PasswordResetConfirm.js @@ -1,7 +1,7 @@ import React, { useEffect, useState } from 'react'; import { API, copy, showError, showNotice, getLogo, getSystemName } from '../../helpers'; import { useSearchParams, Link } from 'react-router-dom'; -import { Button, Card, Form, Typography } from '@douyinfe/semi-ui'; +import { Button, Card, Form, Typography, Banner } from '@douyinfe/semi-ui'; import { IconMail, IconLock } from '@douyinfe/semi-icons'; import { useTranslation } from 'react-i18next'; import Background from '/example.png'; @@ -22,6 +22,7 @@ const PasswordResetConfirm = () => { const [countdown, setCountdown] = useState(30); const [newPassword, setNewPassword] = useState(''); const [searchParams, setSearchParams] = useSearchParams(); + const [formApi, setFormApi] = useState(null); const logo = getLogo(); const systemName = getSystemName(); @@ -33,7 +34,13 @@ const PasswordResetConfirm = () => { token: token || '', email: email || '', }); - }, [searchParams]); + if (formApi) { + formApi.setValues({ + email: email || '', + newPassword: newPassword || '' + }); + } + }, [searchParams, newPassword, formApi]); useEffect(() => { let countdownInterval = null; @@ -98,18 +105,24 @@ const PasswordResetConfirm = () => {
{!isValidResetLink && ( -
- {t('无效的重置链接,请重新发起密码重置请求')} -
+ )} -
+ setFormApi(api)} + initValues={{ email: email || '', newPassword: newPassword || '' }} + className="space-y-4" + > } placeholder={email ? '' : t('等待获取邮箱信息...')} @@ -122,7 +135,6 @@ const PasswordResetConfirm = () => { name="newPassword" size="large" className="!rounded-md" - value={newPassword} disabled={true} prefix={} onClick={(e) => {