Reactjs React Router dom Redirect不考虑确切的属性

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

我的问题是,当尝试将特定url重定向到另一个url时,默认情况下会将所有url重定向到给定的重定向路径。我只想重定向到ex的特定路径

 <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>
  );
}