react路由传参的几种方式

Z, ZLW 1905

react路由传参的3种方式:1、params传参;2、query传参;3、state传参。React是用于构建用户界面的JavaScript库,起源于Facebook的内部项目,React主要用于构建UI。你可以在React里传递多种类型的参数,如声明代码,帮助你渲染出UI、也可以是静态的HTML DOM元素、也可以传递动态变量、甚至是可交互的应用组件。

1、params传参

1,刷新页面后参数不消失,
2,参数会在地址栏显示
3,需要在Route中配置参数名称
params传递单个参数
路由页面
使用Link传参
使用js传参

this.props.router.push(‘/production/’+’105’);
或者
this.props.router.push({pathname:’/production/’+’6′});
在另一个页面获取参数

this.props.match.params.productionId
params传递多个参数
路由页面
state = {
productionId: 120,
productionType: ‘fruits’
}
使用Link传参

/production/${this.state.productionId}/${this.state.productionType}}}>跳转
使用js传参

this.props.router.push({pathname:/demo/${this.state.productionId}/${this.state.productionType}});
获取参数

this.props.match.params

2、query传参

路由页面(无需配置)
使用Link传参
使用js传参

this.props.router.push({pathname:’/production’,query:{productionId:120,productionType:’fruits’}});
获取参数

this.props.location.query

3、state传参

刷新页面后参数不消失
参数不会在地址栏显示
路由页面(无需配置)
使用Link传参
使用js传参

this.props.router.push({pathname:’/production’,state:{productionId:12,productionType:’fruits’}});
获取参数

this.props.location.state

回复

我来回复
  • 暂无回复内容

注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部