Add submit handler

This commit is contained in:
jwu-fisker
2021-01-05 17:31:40 -08:00
parent 508c41373e
commit 2e7a241d6d
2 changed files with 46 additions and 6 deletions

View File

@@ -1,12 +1,27 @@
import React from 'react';
import React, { useRef } from 'react';
import { Link as RouterLink } from 'react-router-dom';
import { Avatar, Button, Container, CssBaseline, Grid, Link, TextField, Typography } from '@material-ui/core';
import LockOutlinedIcon from '@material-ui/icons/LockOutlined';
import { useUserContext } from '../Contexts/UserContext';
import useStyles from '../Styles';
export default function SignInForm() {
const classes = useStyles();
const emailEl = useRef(null);
const passwordEl = useRef(null);
const { fetching, signIn, setError } = useUserContext();
const onSubmit = async (event) => {
try {
event.preventDefault();
const username = emailEl.current.value;
const password = passwordEl.current.value;
const result = await signIn(username, password);
}
catch (e) {
setError(e.message);
}
};
return (
<Container component="main" maxWidth="xs">
<CssBaseline />
@@ -17,7 +32,7 @@ export default function SignInForm() {
<Typography component="h1" variant="h5">
Sign in
</Typography>
<form className={classes.form} noValidate>
<form className={classes.form} noValidate action="{onSubmit}">
<TextField
variant="outlined"
margin="normal"
@@ -28,6 +43,7 @@ export default function SignInForm() {
name="email"
autoComplete="email"
autoFocus
inputRef={emailEl}
/>
<TextField
variant="outlined"
@@ -39,13 +55,16 @@ export default function SignInForm() {
type="password"
id="password"
autoComplete="current-password"
inputRef={passwordEl}
/>
<Button
type="submit"
disabled={fetching}
fullWidth
variant="contained"
color="primary"
className={classes.submit}
onClick={onSubmit}
>
Sign In
</Button>