作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试升级到 React Router v6 (react-router-dom 6.0.1
)。
这是我更新的代码:
import { BrowserRouter, Navigate, Route, Routes } from 'react-router-dom';
<BrowserRouter>
<Routes>
<Route path="/" element={<Home />} />
<Route path="/lab" element={<Lab />} />
<Route render={() => <Navigate to="/" />} />
</Routes>
</BrowserRouter>
最后
Route
正在将其余路径重定向到
/
.
TS2322: Type '{ render: () => Element; }' is not assignable to type 'IntrinsicAttributes & (PathRouteProps | LayoutRouteProps | IndexRouteProps)'. Property 'render' does not exist on type 'IntrinsicAttributes & (PathRouteProps | LayoutRouteProps | IndexRouteProps)'.
render
对于
Route
.如何正确使用?
最佳答案
我认为您应该使用不匹配路由方法。
在文档中检查这一点。
https://reactrouter.com/docs/en/v6/getting-started/tutorial#adding-a-no-match-route
import { BrowserRouter, Navigate, Route, Routes } from 'react-router-dom';
<BrowserRouter>
<Routes>
<Route path="/" element={<Home />} />
<Route path="/lab" element={<Lab />} />
<Route
path="*"
element={<Navigate to="/" replace />}
/>
</Routes>
</BrowserRouter>
更新 - 2022 年 3 月 18 日
replace
支柱。这将避免用户单击返回后的额外重定向。感谢@Paul 这个提示。
关于javascript - 如何在 React Router v6 中重定向?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69868956/
我是一名优秀的程序员,十分优秀!