Files
MauMau-Client/src/layout/pages/Rooms.tsx
DTieman 6ba1523853
Some checks failed
Build Mau & Deploy Mau / build (push) Successful in 1m48s
Build Mau & Deploy Mau / deploy (push) Has been cancelled
Build Mau & Deploy Mau / build (pull_request) Successful in 1m37s
Build Mau & Deploy Mau / deploy (pull_request) Failing after 2m3s
Updated front-end to match back-end and better styling
2024-05-19 23:50:47 +02:00

45 lines
1.1 KiB
TypeScript

import useTitle from "../../utils/hooks/TitleHook";
import React from "react";
import {useNavigate} from "react-router";
import {NoButton} from "../components/Button";
const ROOM_URL = `${process.env.REACT_APP_API_URL}/room`;
const Rooms = () => {
useTitle('Mau-Mau Rooms');
const navigateTo = useNavigate();
const [rooms, setRooms] = React.useState<string[]>([]);
const handleRoomClick = (room: string) => {
if (!localStorage.getItem('playerName')){
localStorage.setItem("playerName", "Mau");
}
navigateTo(`/room/${room}`);
}
React.useEffect(() => {
fetch(ROOM_URL)
.then(r => r.json())
.then(data => setRooms(data));
}, []);
return (
<div>
<h1 className={"mau"}>Rooms</h1>
<ul>
{
rooms.map((room) => {
return <li key={room}>
<NoButton onClick={() => handleRoomClick(room)}>{room}</NoButton>
</li>
})
}
</ul>
</div>
);
};
export default Rooms;