diff --git a/react-ui/src/components/RightContent/AvatarDropdown.tsx b/react-ui/src/components/RightContent/AvatarDropdown.tsx index 929109bb..f928e819 100644 --- a/react-ui/src/components/RightContent/AvatarDropdown.tsx +++ b/react-ui/src/components/RightContent/AvatarDropdown.tsx @@ -9,7 +9,7 @@ import { oauthLogout } from '@/utils/ui'; import { LogoutOutlined, UserOutlined } from '@ant-design/icons'; import { setAlpha } from '@ant-design/pro-components'; import { useEmotionCss } from '@ant-design/use-emotion-css'; -import { history, useModel } from '@umijs/max'; +import { useModel, useNavigate } from '@umijs/max'; import { Avatar, Spin } from 'antd'; import type { MenuInfo } from 'rc-menu/lib/interface'; import React, { useCallback } from 'react'; @@ -60,6 +60,7 @@ const AvatarLogo = () => { }; const AvatarDropdown: React.FC = ({ menu }) => { + const navigate = useNavigate(); /** * 退出登录,并且将当前的 url 保存 */ @@ -109,9 +110,9 @@ const AvatarDropdown: React.FC = ({ menu }) => { loginOut(); return; } - history.push(`/account/${key}`); + navigate(`/account/${key}`); }, - [setInitialState], + [setInitialState, navigate], ); const loading = ( diff --git a/react-ui/src/pages/Authorize/index.tsx b/react-ui/src/pages/Authorize/index.tsx index 2caf3195..9a035ac9 100644 --- a/react-ui/src/pages/Authorize/index.tsx +++ b/react-ui/src/pages/Authorize/index.tsx @@ -36,7 +36,7 @@ function Authorize() { setSessionToken(access_token, access_token, expires_in); message.success('登录成功!'); await fetchUserInfo(); - history.push(redirect || '/'); + history.replace(redirect || '/'); } }, [fetchUserInfo, redirect, code]); diff --git a/react-ui/src/pages/User/Login/login.tsx b/react-ui/src/pages/User/Login/login.tsx index a7cdcfba..7b0d9bb1 100644 --- a/react-ui/src/pages/User/Login/login.tsx +++ b/react-ui/src/pages/User/Login/login.tsx @@ -97,7 +97,7 @@ const Login = () => { await fetchUserInfo(); const urlParams = new URL(window.location.href).searchParams; - history.push(urlParams.get('redirect') || '/'); + history.replace(urlParams.get('redirect') || '/'); } else { if (error?.data?.code === 500 && error?.data?.msg === '验证码错误') { captchaInputRef.current?.focus({