import React from 'react' import { login } from '@/utils/auth.ts' import { LOGIN_SUCCESS, LOGIN_USERNAME_PASSWORD_ERROR } from '@/constants/Common.constants.ts' import { setToken } from '@/utils/common.ts' import '@/assets/css/login.css' const Login: React.FC = () => { const [messageApi, contextHolder] = message.useMessage() const navigate = useNavigate() const [isLoggingIn, setIsLoggingIn] = useState(false) const onFinish = (values: LoginForm) => { setIsLoggingIn(true) void login(values.username, values.password).then((value) => { const res = value.data const { code, data } = res switch (code) { case LOGIN_SUCCESS: setToken(data?.token ?? '') void messageApi.success('登录成功') setTimeout(() => { navigate('/') }, 1500) break case LOGIN_USERNAME_PASSWORD_ERROR: void messageApi.error( <> 用户名或密码错误,请重试 > ) setIsLoggingIn(false) break default: void messageApi.error( <> 服务器出错了 > ) setIsLoggingIn(false) } }) } return ( <> {contextHolder}