Reactjs React Router dom Redirect不考虑确切的属性
我的问题是,当尝试将特定url重定向到另一个url时,默认情况下会将所有url重定向到给定的重定向路径。我只想重定向到ex的特定路径Reactjs React Router dom Redirect不考虑确切的属性,reactjs,react-router-dom,Reactjs,React Router Dom,我的问题是,当尝试将特定url重定向到另一个url时,默认情况下会将所有url重定向到给定的重定向路径。我只想重定向到ex的特定路径 <Redirect exact from="/" to="/movies"></Redirect> 我只是想改变方向http://localhost:3000/ t0http://localhost:3000/movies,这很好,但现在如果我访问http://localhost:3000/x
<Redirect exact from="/" to="/movies"></Redirect>
我只是想改变方向http://localhost:3000/ t0http://localhost:3000/movies,这很好,但现在如果我访问http://localhost:3000/xyz 它又把我引向了http://localhost:3000/movies
代码沙盒
相反,请执行以下操作:
<Route exact path="/">
<Redirect to="/movies" />
</Route>
重定向道具
注意:这只能用于在渲染图像时匹配位置
在
的内部。有关更多信息,请参见
细节
您需要在开关中包装路由和重定向,以便from
道具发挥作用,并且not指定要重定向的路径的较早匹配路径,即“/”
从“react router dom”导入{BrowserRouter,Switch,Route,Redirect};
导出默认函数App(){
返回(
);
}
此演示有3个链接,一个指向主页(“/”)的链接将匹配重定向
,一个指向测试(“/test”)的链接将匹配,一个指向notTest(“/notTest”)的链接将不匹配任何路由。开关也不会匹配任何其他路径
注意:一种常见的模式是不匹配重定向的任何路由,并将其保留为一个“全面”路径,可以重定向到应用程序/路由器中的已知/已处理路径。能否提供一个代码示例,路由器逻辑?这段代码足够简单,可以继续提供真正的帮助。是否在开关中呈现重定向
?你能提供一个运行的代码沙盒来重现这个问题吗?不,我不是在交换机中包装重定向,通过这种方法,应用程序将所有URL重定向到/movies
import { BrowserRouter, Switch, Route, Redirect } from "react-router-dom";
export default function App() {
return (
<BrowserRouter>
<main className="container">
<Switch>
<Route exact path="/movies" />
<Route exact path="/test" />
<Redirect exact from="/" to="/movies" />
</Switch>
</main>
</BrowserRouter>
);
}