【发布时间】:2021-12-29 21:10:42
【问题描述】:
我正在设置一个 404 页面。它将位于 /404,我将使用<Navigate path='/404' /> 来处理任何未知的路线。这一切都很好,但我还想显示 URL 详细信息,甚至更想记录错误链接。为此,我需要访问之前的路线详情。
有一篇类似的文章,但它讨论的是导航历史,而不是显示历史信息。
How to go back to previous route in react-router-dom v6
我尝试了以下各种组合,试图从 useLocation 中获取详细信息并作为状态传递,但它会引发错误:Error: useLocation() may be used only in the context of a <Router> component.
<BrowserRouter>
<Routes>
<Route path="/" element={<Homepage />} />
<Route path="/404" element={<NoPageFound />} />
<Route path="*" element={<Navigate to='/404' state={{ prevRoute: useLocation() }} />} />
</Routes>
<BrowserRouter>
我是否可以通过其他方式从 <NoPageFound /> 中访问之前的路线详细信息以进行显示/记录?
【问题讨论】:
标签: reactjs react-hooks react-router react-router-dom