Add submit handler
This commit is contained in:
@@ -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>
|
||||
|
||||
Reference in New Issue
Block a user