目前我正在使用 React 路由器将不同的路径路由到不同的 react 组件。我有以下示例代码:
<Switch>
<Route path="/profile/viewmessage/:message">
<Profile />
</Route>
<Route path=".../friends">
<Friends />
</Route>
<Switch>
编辑:此代码将导致一个路径:"/profile/viewmessage/message/.../friends",如果留下.../friends路径。
您不能让路径简单地是"/friends",因为如果您尝试查看消息,路径实际上是"/profile/message/friends"。
你不能使用 path="../friends",因为这样整体路径将是"/profile/friends"。
我知道必须有一种方法可以克服,我只是无法在网上找到一个。有没有降低几个级别的好方法。
提前谢谢。非常感谢任何正确方向的指示。
哇,这是一个不幸的问题...
显然,您所要做的就是下降到您想要的确切路径,例如包含完整路径的 path="/friends"。
因此,如果您有"/page/view/select/message"并且您想下降到视图部分,您将设置 path="/page/view"您必须包含前缀"/">
,否则它不会下降到您想要的水平(这是我遇到的问题(。
为了解决这个问题,您所要做的就是用前面的"/"为路径提供您想要导航的位置的完整路径。
正确的代码应该是:
<Switch>
<Route path="/profile/viewmessage/:message">
<Profile />
</Route>
<Route path="/friends">
<Friends />
</Route>
同样,由于前面的/,这是有效的。 如果路径只是"朋友",那么它会将其附加到当前路径。这么简单的答案。