正如标题所说,我有一张桌子。如果我点击td,我想将用户转发到特定网址。
现在我需要将一个对象传递给将要呈现的组件。
我在React 0.14.6和react-router 1.0.3上。
我的配置非常简单:
<Provider store={store}>
<Router>
<Route path='/' component={App}>
<IndexRoute component={SearchCustomer}/>
<Route path='customerOverview/:props' component={CustomerOverview}/>
</Route>
</Router>
</Provider>
客户概述需要触发onClick,并将道具传递给组件。
通过道具可以从this.props.route
访问:
this.prop.route.yourCustomProp
您可以使用this.props.history
和push等常规历史模块方法以编程方式使用replace转到新路径:
this.props.history.push('/login')
如果您需要更深入地访问组件中的历史记录,可以使用withRouter HOC。
对于DOM链接,请根据文档使用Link。
请注意,此答案已针对react-router v4进行了更新。旧版本的react-router使用旧的历史模块,上面有pushState and replaceState。