【发布时间】:2022-01-10 16:12:40
【问题描述】:
详情:我有这样的顶级路由:
<Routes>
<Route path='/*' element={<HomePage/>} />
<Route path='/movies/*' element={<MoviesPage/>} />
<Route path='/profile/*' element={<ProfilePage/>} />
<Route path='/people/*' element={<PeoplePage/>} />
<Route path='/auth' element={<LoginPage/>} />
</Routes>
我们看看具体的嵌套路由/movies/*:
<Routes>
<Route path='' element={<Outlet/>}>
<Route index path='top-rated/*' element={<TopRatedMoviesPage/>} />
<Route path='popular/*' element={<PopularMoviesPage/>} />
<Route path='recommended/*' element={<RecommendedMoviesPage/>} />
<Route path=':id/details' element={<MovieDetails/>} />
</Route>
</Routes>
问题:当我尝试访问 /movies 时,预期的行为应该是导航到 /movies/top-rated由于 top-rated/* 路由上的 index 属性,但没有发生这种情况。我不知道我是否误解了 index 属性和 Outlet 元素背后的功能,所以我需要任何人的帮助。我希望你能理解这个问题。
提前谢谢你!
【问题讨论】:
-
我认为你应该有
<Route path='/' element={<Outlet/>}>,(注意路径是'/'而不是''但我不确定。 -
@Ben Nope,试过了,不行。
标签: reactjs react-router