我们可以使用不同的网址重新加载相同的组件吗?

时间:2016-08-09 12:40:57

标签: reactjs react-router

我有我的组件“消息”,我使用两个不同的网址调用它。当我点击第一个链接说'messages / 1'它将加载我的消息收件箱,我有另一个网址'消息/ 5/1'组件与上面的url相同。当页面使用'messages / 1'url加载时,当我点击某个指向'messages / 5/1'的字段时。它更改了标题中的url但它是没有重新加载页面。 我希望每当有不同的网址时重新加载我的组件,即使它们有相同的组件。有任何方法可以做到这一点。

1 个答案:

答案 0 :(得分:0)

您可以在不同的网址下加载相同的组件,它应该加载一切正常。只需更改路径prop并在组件prop下添加所需的相同组件。

render((
  <Router>
    <Route path="/" component={App}>
      <Route path="about" component={About} />
      <Route path="inbox" component={Message}>
        <Route path="messages/:id" component={Message} />
      </Route>
    </Route>
  </Router>
), document.body) 

编辑: 您可以尝试使用rect-router的刷新方法

来自https://github.com/reactjs/react-router/blob/v0.13.3/modules/createRouter.js#L435-L437

 refresh: function () {
        Router.dispatch(location.getCurrentPath(), null);
      },