避免在React-Redux-Router中使用Concat URL

时间:2016-12-27 08:19:13

标签: reactjs react-router react-router-redux

我在我的应用中使用react-router + react-router-redux。 我想要实现的是每次用户点击dashboard中的标签时,它会将网址更改为/dashboard/messages

但是,使用push('dashboard/' + page)时,每次点击标签时都会附加链接。

我目前的情况:

  1. 当前网址为/dashboard
  2. 单击“消息”选项卡。
  3. 网址将更改为/dashboard/messages
  4. 单击“主页”选项卡。
  5. 网址将更改为/dashboard/messages/dashboard/home
  6. 在点击“消息”标签后点击“首页”标签时,有没有办法将/dashboard/messages替换为/dashboard/home

    非常感谢!

3 个答案:

答案 0 :(得分:2)

我发现了这个愚蠢的错误,对不起。

显然,它必须是push('/dashboard/' + page)而不是push('dashboard/' + page)

答案 1 :(得分:1)

如果您从react-router-dom的角度来看这里,请注意<Link to='stringUrl' />将您在to属性上放置的任何内容连接到当前的path。因此,如果您当前位于/home路径上,它将因此而产生/home/StringUrl

但是,如果您改用正斜杠/,即<Link to='/stringUrl' />,则不会这样做,因此会产生/StringUrl路径。

答案 2 :(得分:0)

使用此

push('/dashboard/' + page)