我使用 react-router v3 进行了以下路由配置:
<Route component={App}>
<Route path="login" component={Login} />
<Route path="logout" component={Logout} />
<Route path="/" component={Admin}>
<IndexRoute component={Dashboard} />
<Route path="profile" component={Profile} />
</Route>
</Route>
我使用 v4 尝试了以下操作:
<Router>
<div id="app">
<Match pattern="/login" component={Login} />
<Match pattern="/logout" component={Logout} />
<Match pattern="/" component={Admin} />
</div>
</Router>
和内部Admin
组件:
<div id="admin">
<Match pattern="/" component={Dashboard} />
<Match pattern="/profile" component={Profile} />
</div>
问题:
- 当我访问时
/login
,Admin
组件也匹配。 - 我尝试更改为
<Match pattern="/" exactly component={Admin} />
. 它不会呈现Admin
组件中的子匹配项。所以当我访问时/profile
,它没有匹配。