diff --git a/frontend/src/index.js b/frontend/src/index.js index 28592a4fe01255010457d4e46c7edf453e19adee..9318fc652ddc539fdc7e12a1f10332a09ec02979 100644 --- a/frontend/src/index.js +++ b/frontend/src/index.js @@ -1,6 +1,6 @@ import React, { createContext, useEffect, useState } from "react"; import { createRoot } from "react-dom/client"; -import { BrowserRouter as Router, Routes, Route } from "react-router-dom"; +import { BrowserRouter as Router, Routes, Route, useNavigationType } from "react-router-dom"; import useWebSocket from "react-use-websocket"; import axios from "axios"; @@ -41,6 +41,8 @@ export default function App() { }, [reload]); useEffect(() => { + window.addEventListener("popstate", () => setReload(true)); + let path = window.location.pathname.split("/"); if (restaurantsList && path.length >= 2 && path[1]) { let name = decodeURIComponent(path[1]); @@ -48,7 +50,11 @@ export default function App() { if (filter) { setSelection(filter[0]); } + } else { + setSelection(null); } + + return () => window.removeEventListener("popstate", () => setReload(true)); }, [restaurantsList]); useEffect(() => {