传参方式1:
将参数直接写在路径中,前提是router定义时,需要指定参数的名字,这里假定为:value;
browserHistory.push(pathname: '/routerName/123');
如何获取到123呢?
通过this.props.params.value即可获取
传参方式2:
通过state传参,可以在页面跳转时,url中不显示参数;
browserHistory.push(pathname: '/routerName',state: { key
: value });
跳转界面如何接收参数呢?
this.props.location.state.key便可以获得state中的key的value;
尝试了第二种方式发现不好用, 可能是router版本更新到4之后网上的内容太旧了
经过推敲之后发现可以这样
var data = {issueId:60};
var path = {
pathname:’/IssueDetail.html’,
state:data,
}
this.props.history.push(path);
然后接收的时候要带着withRouter
export default withRouter(IssueDetailDetails);
id:_this.props.location.state.issueId