react-router-dom 相关问题

使用此标记可以了解有关DOM使用和React Router v4绑定的问题。

为什么当我想要转到有 Hashlink 的导航时会出现错误? [重复]

[错误][2] 应用程序.jsx 从“react”导入 React, { useRef, useEffect, Suspense, Fragment }; 从“react-redux”导入{useSelector}; 导入 { BrowserRouter, Routes, Route } from...

回答 2 投票 0

如何在不改变这段代码逻辑的情况下在Router之外应用Hashlink?

错误 - 应用程序.jsx 从“react”导入 React, { useEffect, Suspense, Fragment }; 从“react-redux”导入{useSelector}; 导入 { createBrowserRouter, RouterProvider } from...

回答 2 投票 0

为什么我在Hashlink之后会出现很多这样的错误

错误 - 应用程序.jsx 从“react”导入 React, { useEffect, Suspense, Fragment }; 从“react-redux”导入{useSelector}; 导入 { createBrowserRouter, RouterProvider } from...

回答 1 投票 0

如何在react-router-dom中正确定义后备路由

我有以下路由器定义: 我有以下Router定义: <Router> <Route exact path='/' component={Home}/> <Route path='/about' component={About}/> <Route path='/code' component={Code}/> </Router> 我希望任何未映射的路线(即/foo)重定向回根/。 我尝试了<Redirect .../>但没有成功。另外,添加不带 <Route /> 的 path= 会导致每个页面上出现重复的组件。 只需像这样在底部放置一个重定向,然后用 Switch: 包裹你的路线 <Router> <Switch> <Route exact path='/' component={Home}/> <Route path='/about' component={About}/> <Route path='/code' component={Code}/> // Redirect all 404's to home <Redirect to='/' /> </Switch> </Router> <Router> <Switch> // ...your routes and then <Route path="*" render={() => <Redirect to="/" />} </Switch> </Router> 您需要在 <Switch> 组件内执行此操作。 // IMPORT import { BrowserRouter as Router, Route, Link, Switch, Redirect } from "react-router-dom"; ---------- // USAGE <Switch> <Route path="/" exact component={Home} /> <Redirect from="/old-match" to="/will-match" /> <Route path="/will-match" component={WillMatch} /> <Route component={NoMatch} /> </Switch> 正如您从React Router Docs中看到的。 开关 渲染与位置匹配的第一个子项 <Route> 或 <Redirect>。 这与仅使用一堆 s 有什么不同? <Switch> 的独特之处在于它专门渲染一条路线。相反,每个与位置匹配的 <Route> 都会进行包容性渲染。考虑这段代码: <Route path="/about" component={About}/> <Route path="/:user" component={User}/> <Route component={NoMatch}/> 如果 URL 是 /about,则 <About>、<User> 和 <NoMatch> 都将呈现,因为它们都与路径匹配。这是设计使然,允许我们以多种方式将 <Route> 组合到我们的应用程序中,例如侧边栏和面包屑、引导选项卡等。 但是,有时我们只想选择一个 <Route> 进行渲染。如果我们位于 /about,我们不想也匹配 /:user (或显示我们的“404”页面)。以下是使用 Switch 进行操作的方法: import { Switch, Route } from 'react-router' <Switch> <Route exact path="/" component={Home}/> <Route path="/about" component={About}/> <Route path="/:user" component={User}/> <Route component={NoMatch}/> </Switch> 我很惊讶地发现这个问题的答案都不是我认为正确的,因为它们都使用重定向,在我看来这是一种糟糕的用户体验。 如果您立即将用户重定向到 404 路由器,用户将不知道哪个 URL 是错误的。 正确的答案应该是 React Router 自己的文档这里中演示的内容。 <Switch> <Route exact path="/"> <Home /> </Route> <Route path="/old-match"> <Redirect to="/will-match" /> </Route> <Route path="/will-match"> <WillMatch /> </Route> <Route path="*"> <NoMatch /> </Route> </Switch> 请在所有Routes底部添加默认路由(添加from属性进行重定向) <Router> <Route exact path='/' component={Home}/> <Route path='/about' component={About}/> <Route path='/code' component={Code}/> <Redirect from="/" /> </Router> 工作链接https://stackblitz.com/edit/react-st9nug?file=index.js 在 React Router v6 中,Redirect 组件已被 Navigate 组件替换。因此,您应该使用这样的 Navigate 组件,而不是使用 Redirect to="/": <Routes> {/* Define your other routes here */} <Route path="/home" element={<Home />} /> {/* Redirect to /home */} <Route path="*" element={<Navigate to="/home" replace />} /> </Routes>

回答 6 投票 0

根据用户输入动态创建网页

我正在 React 中开发一个用于安排小组会议的项目。这个想法是用户可以在主页中创建一个俱乐部,然后导航到该俱乐部页面。一个用户可以是多个俱乐部的成员...

回答 1 投票 0

导航到另一个页面后显示react-toastify toast

我有这个函数,可以在提交时将数据提交到 API 调用函数,然后使用成功数据显示一个 toast。作为下一步,我导航到另一个页面并显示 toast...

回答 2 投票 0

页面刷新

我正在使用 React 开发一个产品网站,每次单击特定菜单时,它都会刷新我的整个页面,而不仅仅是渲染组件。 导出 const 标头 = () => { return ...

回答 1 投票 0

如何使用React router dom 6为主页添加多个路径?

我正在使用react router dom 6 我想加载 3 个路径的登录组件: //登录&/主页 我尝试了这条路径: } /> 但它确实...

回答 6 投票 0

Vite React 的react-router-dom 问题

我正在我的Vite React应用程序中设置react-router-dom。开发中一切都运行顺利,但是当我擦我的构建并预览它时,我收到以下错误 localhost/:1 未捕获的类型错误:...

回答 1 投票 0

具有受保护路由的用户布局不会显示在浏览器上。显示带有导航和侧栏的空白页面

迭代用户路由文件中的页面的用户布局仅显示侧边栏和导航栏。显示空白页面,不显示页面内容。页面的 url 是正确的...

回答 1 投票 0

无法在ReactJS中使用useParams提取id

在我的应用程序中,我正在尝试编辑一个任务,这需要完成任务 id,但由于某种原因,我的 id 没有使用 useParams 提取。下面是我的EditTask.jsx代码,地址ba...

回答 1 投票 0

如何测试<Navigate />将应用程序导航到正确的组件

我使用react-router-dom v6 路由组件。 如果(!加载){ 返回; } 返回 ...

回答 2 投票 0

React router dom v6 - 导航(-1)刷新页面时需要按2次

所以我正在使用react和react-router-dom v6。我发现当我导航到第 1 页时,在该页面中,如果我刷新页面,则需要按按钮调用 navigator(-1) 两次,而时间我...

回答 1 投票 0

React Routes 无法将 ProtectedRoute 组件识别为路由

在组件中添加受保护的路由时,它不会将其识别为路由。以下是 ProtectedRoute 和 App.js: 从“反应”导入反应; 从'react-route...导入{路线,导航}...

回答 1 投票 0

我们可以在 React Router v6 中同时使用索引和路径属性吗?

我必须遵循设置页面的路线(在内): ...

回答 1 投票 0

我将 React 从 17 更新到 v18 后,重定向不起作用

`我一直在使用 React 17 和 React Router v6 开发 React 应用程序。 我现在将 React 更新到 v18 我遇到一个问题,单击 a 或 useNavigate 会更新地址栏中的 URL,...

回答 1 投票 0

React Router DOM 不会在导航时呈现

我在 React 应用程序中有一个非常基本的路由设置。 ProtectedRoutes 中的导航部分正在导航,但不会在窗口上呈现任何内容。另外,当我将路线标签移出它们的...

回答 1 投票 0

未捕获类型错误:使用 MUI 时无法读取 null 的属性(读取“useContext”)

为什么我在react组件中使用MUI的Grid时总是遇到这个错误 这是组件的完整代码 从“反应”导入反应; 从“@mui/mate...

回答 1 投票 0

React Router 未在 npm start 上渲染任何内容

有谁知道为什么当我运行 npm start 时它只显示一个空白页面?我尝试了多种方法将主页路由到 StorePicker 组件。如果我只是对组件进行硬编码,我...

回答 1 投票 0

React Router 在页面加载时不显示默认主页

我刚刚学习使用 React Router,我的主 App.js 文件如下所示: 函数应用程序(){ 返回 ( <> ...

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.