用react做单页面应用,在一个组件中用link组件实现到另一个组件的跳转,但是需要在url传递参数,比如说点击服务列表中某一项,跳转到某一个服务的详情信息页面,这个时候需要在link的to属性中加入那个具体服务的服务ID作为param参数,然后通过这个服务ID获取相应服务信息。但是,这个ID会显示在地址栏的url中,怎么才能将需要传递过去的参数不显示在地址栏中呢?
用react做单页面应用,在一个组件中用link组件实现到另一个组件的跳转,但是需要在url传递参数,比如说点击服务列表中某一项,跳转到某一个服务的详情信息页面,这个时候需要在link的to属性中加入那个具体服务的服务ID作为param参数,然后通过这个服务ID获取相应服务信息。但是,这个ID会显示在地址栏的url中,怎么才能将需要传递过去的参数不显示在地址栏中呢?
如果是react-router使用
<Route path="/:id" component={ItemDetail} />
ItemDetail组件内部 this.props.params.id获取到url的值
react-router-dom
<Route path="/:id" component={ItemDetail} />
ItemDetail组件内部 this.props.match.params.id获取到url的值
这样就可以利用其id值对应请求服务器的内容
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
虽然不推荐,但是,
搞个全局变量?
试试localStroage(其实和上面一样啦)