我正在使用ReactJS
设计一个Web应用程序。在这里,我使用react-router-dom
来进行导航。
在这里,它看起来像是:
import { BrowserRouter, Route, Routes } from 'react-router-dom'
<BrowserRouter>
<Routes>
<Route exact path='/login' element={<LoginPage />} />
<Route exact path='/homePage' element={<HomePage />} />
<Route exact path='/detailsPage' element={<DetailsPage />} />
</Routes>
</BrowserRouter>
最近版本中,useHistory
被 useNavigation
取代,在我的代码中我正在使用 useNavigation
实现页面导航。
代码:
import { useNavigate } from "react-router";
const navigate = useNavigate();
/ **For Navigating ** /
navigate("/login")
它的表现很出色。但当我导航到loginPage
时,我想清除浏览器后退
按钮中存储的所有历史记录。我在useHistory
中找到解决方案。但是在useNavigation
中,它没有起作用。
我尝试过的代码:
navigate[0] = navigate[navigate.length - 1]
navigate("/login")
还有这个
navigate("/login", { replace: true })
这不起作用。我想知道如何清除浏览器后退按钮
中存储的所有历史记录,以针对我的网址进行操作。如果我返回,我甚至可以访问主页。我阅读了他们的文档https://reach.tech/router/api/useNavigate,但找不到解决方案。请帮我提供一些解决此问题的方法。