import React from 'react'; import { RouteComponentProps } from 'react-router-dom'; import { ContentContainer } from '../../components'; import { UserService } from '../../services'; interface Props extends RouteComponentProps {} interface State { username: string; password: string; errorMessage?: string; } export class Login extends React.Component { constructor(props: Props) { super(props); this.state = { username: '', password: '', }; } private async login(event: any) { event.preventDefault(); const { username, password } = this.state; try { await UserService.login(username, password); window.location.pathname = '/'; } catch (e) { console.error(e); this.setState({ errorMessage: 'Invalid login.' }); } } render() { const { username, password } = this.state; return (
this.login(e)}>
this.setState({ username: event.target.value })} />
this.setState({ password: event.target.value })} />
{this.state.errorMessage}
); } }