import React, { useState } from 'react'; import { useForm } from 'react-hook-form'; import { navigate } from '@reach/router'; import axios from './axios'; import userState from './UserState'; const Register = () => { const { register, handleSubmit, watch, errors } = useForm(); const [ loginError, setLoginError ] = useState(null); const onSubmit = async data => { if (data.password !== data.confirm_password) { setLoginError('Passwords do not match.'); return; } try { const resp = await axios.post('/register', data); const { username } = resp.data; userState.authError = null; userState.username = username; navigate('/'); } catch (err) { if (err.response && err.response.data) { setLoginError(err.response.data.error); } else { console.error(err); setLoginError('Unknown error occurred. See console for details.'); } } }; return (
); }; export default Register;