diff --git a/src/layout/pages/MainLobby.tsx b/src/layout/pages/MainLobby.tsx
index 5d1da54..46c2cee 100644
--- a/src/layout/pages/MainLobby.tsx
+++ b/src/layout/pages/MainLobby.tsx
@@ -1,6 +1,7 @@
import React from "react";
import useTitle from "../../utils/hooks/TitleHook";
import Card from "../components/Card";
+import {useNavigate} from "react-router";
const ROOM_URL = `http://${process.env.REACT_APP_API_URL}/room`;
@@ -8,18 +9,16 @@ const MainLobby = () => {
useTitle('Mau-Mau Lobby');
+ const navigateTo = useNavigate();
+
const handleCreateRoom = () => {
fetch(ROOM_URL, {
method: 'POST',
}).then(r => r.json()).then(data => {
- window.location.href = `/room/${data}`;
+ navigateTo(`/room/${data}`)
});
}
- const gotoRooms = () => {
- window.location.host = '/rooms';
- }
-
return (
Mau-Mau
@@ -28,7 +27,7 @@ const MainLobby = () => {
Host Game
-
+
navigateTo('/rooms')}>
Join Game
diff --git a/src/layout/pages/Room.tsx b/src/layout/pages/Room.tsx
index d0cc86f..fa1e076 100644
--- a/src/layout/pages/Room.tsx
+++ b/src/layout/pages/Room.tsx
@@ -1,6 +1,6 @@
import useWebSocket from "react-use-websocket";
import React from "react";
-import {useParams} from "react-router";
+import {useNavigate, useParams} from "react-router";
import {GHButton} from "../components/Button";
import useTitle from "../../utils/hooks/TitleHook";
import Hand from "../components/Hand";
@@ -18,6 +18,8 @@ const Room = () => {
useTitle('Mau!');
+ const navigateTo = useNavigate();
+
const {roomId} = useParams();
const WS_URL = `ws://${process.env.REACT_APP_API_URL}/room/${roomId}`;
@@ -43,7 +45,7 @@ const Room = () => {
const handleLeaveRoom = () => {
const socket = websocket.getWebSocket();
if (socket) socket.close();
- window.location.href = '/';
+ navigateTo('/');
}
const handleCardSend = (card: string) => {
diff --git a/src/layout/pages/Rooms.tsx b/src/layout/pages/Rooms.tsx
index 2e11747..0779948 100644
--- a/src/layout/pages/Rooms.tsx
+++ b/src/layout/pages/Rooms.tsx
@@ -1,11 +1,13 @@
import useTitle from "../../utils/hooks/TitleHook";
import React from "react";
+import {useNavigate} from "react-router";
const ROOM_URL = `http://${process.env.REACT_APP_API_URL}/room`;
const Rooms = () => {
useTitle('Mau-Mau Rooms');
+ const navigateTo = useNavigate();
const [rooms, setRooms] = React.useState
([]);
@@ -15,10 +17,6 @@ const Rooms = () => {
.then(data => setRooms(data));
}, []);
- const gotoRoom = (room: string) => {
- window.location.host = `/room/${room}`;
- }
-
return (
Rooms
@@ -26,7 +24,7 @@ const Rooms = () => {
{
rooms.map((room, index) => {
return gotoRoom(room)}>{room}
+ onClick={() => navigateTo(`/room/${room}`)}>{room}
})
}