React Router 否定路径
React Router negate path
我正在使用 react-router-dom
v4 的嵌套路由功能,但有一个用例我还没有找到解决方案。
我在根组件有两个 Route
。
一个用于几乎整个网站,另一个用于帐户部分。
我希望能够做类似...
<Route path="/^(account)" ... />
...或类似的东西,但到目前为止我还无法让它工作。有这方面的机制吗?
根据评论进行编辑:
BrowserRouter
组件定义了两个 Route
。
/*
* Would serve as the root route for all pages that aren't under account.
* i.e.
* /
* /about
* /some-section
*/
<Route path="/^(account)" component={SiteLayout} />
/*
* The other would respond on...
* /account
* /account/forgot
* etc.
*/
<Route path="/account" component={Account} />
希望这能更清楚地展示我正在寻找的东西。
你真的可以对所有其他路由使用 catch all 吗?
<Router>
<Switch>
<Route path="/account" component={Account} />
<Route component={NotAccount} />
</Switch>
</Router>
我正在使用 react-router-dom
v4 的嵌套路由功能,但有一个用例我还没有找到解决方案。
我在根组件有两个 Route
。
一个用于几乎整个网站,另一个用于帐户部分。
我希望能够做类似...
<Route path="/^(account)" ... />
...或类似的东西,但到目前为止我还无法让它工作。有这方面的机制吗?
根据评论进行编辑:
BrowserRouter
组件定义了两个 Route
。
/*
* Would serve as the root route for all pages that aren't under account.
* i.e.
* /
* /about
* /some-section
*/
<Route path="/^(account)" component={SiteLayout} />
/*
* The other would respond on...
* /account
* /account/forgot
* etc.
*/
<Route path="/account" component={Account} />
希望这能更清楚地展示我正在寻找的东西。
你真的可以对所有其他路由使用 catch all 吗?
<Router>
<Switch>
<Route path="/account" component={Account} />
<Route component={NotAccount} />
</Switch>
</Router>