import {Link, useNavigate} from "react-router-dom"; import styles from './LoginForm.module.css'; import {useRef, useState} from 'react'; import {authUser} from "../../api/AuthApi.ts"; const LoginForm = () => { const [focused, setFocused] = useState({ email: false, password: false }); const navigate = useNavigate(); const [error, setError] = useState(null); const emailRef = useRef(null); const passwordRef = useRef(null); const handleSubmit = async (event: React.FormEvent) => { event.preventDefault(); const email = emailRef.current?.value ?? ''; const password = passwordRef.current?.value ?? ''; setError(null); try{ if (email === '' || password === '') setError('Заполните все поля') else { const responseData = await authUser({email, password}); if (responseData && !responseData.error) navigate('/my-surveys', {replace: true}); else setError('Неверный логин или пароль') } } catch(err){ console.error('Ошибка при отправке запроса:', err); setError('Неверный логин или пароль') } } const handleChange = () => { if (error) { setError(null); } } return (

С возвращением!

setFocused({ ...focused, email: true })} onBlur={() => setFocused({ ...focused, email: false })} style={{ color: focused.email ? 'black' : 'inherit' }} />
setFocused({ ...focused, password: true })} onBlur={() => setFocused({ ...focused, password: false })} style={{ color: focused.password ? 'black' : 'inherit' }} /> {error &&

{error}

}

Еще не с нами? Зарегистрируйтесь!

); } export default LoginForm;