import React, { useContext, useEffect, useState } from "react"; import { Button, Col, Container, Form, Row, Alert } from "react-bootstrap"; import { Link, useLocation } from "wouter"; import MyNavbar from "../components/MyNavbar"; import UserContext from "../contexts/UserContext"; import { makeRequest } from "../utils.ts"; const LoginPage = () => { const [username, setUsername] = useState(""); const [password, setPassword] = useState(""); const [error, setError] = useState(null); const { currentUser, setCurrentUser } = useContext(UserContext); const [location, setLocation] = useLocation(); useEffect(() => { if (currentUser?.id) { gotoHome(); } }, [currentUser]); const gotoHome = () => { setLocation("/"); }; const sendLoginRequest = async (e) => { e?.preventDefault(); await makeRequest({ url: "http://localhost:5000/login", method: "POST", body: { username, password }, }) .then((resp) => resp.json()) .then((data) => { if (data.error) { setError(data); return; } setCurrentUser(data); }); }; return ( {error && ( {error.message} )}

Login


Username { setUsername(e.target.value); }} /> Password { setPassword(e.target.value); }} />

Don't have an account? Register here

); }; export default LoginPage;