react怎么实现页面组件跳转

广告:宝塔服务器面板,一键全能部署及管理,送你10850元礼包,点我领取~~~

react怎么实现页面组件跳转

跳转方法:1、利用Link标签,语法“<Link to='跳转地址'></Link>”;2、利用push(),语法“push("跳转地址")”;3、利用history(),语法“this.props.history.goBack();”等。

本教程操作环境:Windows7系统、react17.0.1版、Dell G3电脑。

React中几种页面(组件)跳转方式

1、使用 react-router-dom 中的 Link 实现页面跳转

一般适用于,点击按钮或其他组件进行页面跳转,具体使用方式如下:

<Link    to={{        pathname: '/path/newpath',        state: {  // 页面跳转要传递的数据,如下              data1: {},              data2: []        },    }}>   <Button>        点击跳转   </Button></Link>
登录后复制

2、使用 react-router-redux 中的 push 进行页面跳转

react-router-redux 中包含以下几个函数,一般会结合redux使用:

push - 跳转到指定路径replace - 替换历史记录中的当前位置go - 在历史记录中向后或向前移动相对数量的位置goForward - 向前移动一个位置。相当于go(1)goBack - 向后移动一个位置。相当于go(-1)

具体使用时通过发送disppatch来进行页面跳转:

let param1 = {}dispatch(push("/path/newpath'", param1));dispatch(replace("/path/newpath'", param1));
登录后复制

3、使用RouteComponentProps 中的history进行页面回退

一般在完成某种操作,需要返回上一个页面时使用。

this.props.history.goBack();
登录后复制

4、打开一个新的tab页,并截取路径

首先定义路由为 :

path: "/pathname/:param1/:param2/:param3",
登录后复制

点击事件跳转到新页面 打开一个新的tab:

window.open(`pathname/${param1}/${param2}/${param3}`)
登录后复制

在新的页面获取路径上的参数:

param1:  this.props.match.params.param1, param2:  this.props.match.params.param2, param3:  this.props.match.params.param3,
登录后复制

获取路径参数 :

path?key1=value1&key2=value2
登录后复制
const query = this.props.match.location.search const arr = query.split('&')  // ['?key1=value1', '&key2=value2']const successCount = arr[0].substr(6) // 'value1'const failedCount = arr[1].substr(6) // 'value2'
登录后复制

或者

function GetUrlParam(url, paramName) {  var arr = url.split("?");  if (arr.length > 1) {    var paramArr= arr[1].split("&");    var arr;    for (var i = 0; i < paramArr.length; i++) {      arr = paramArr[i].split("=");      if (arr != null && arr[0] == paramName) {        return arr[1];      }    }    return "";  }else {    return "";  } }
登录后复制

推荐学习:《react视频教程》

以上就是react怎么实现页面组件跳转的详细内容,更多请关注9543建站博客其它相关文章!

9543建站博客
一个专注于网站开发、微信开发的技术类纯净博客。
作者头像
admin创始人

肥猫,知名SEO博客站长,14年SEO经验。

上一篇:如何在文字下面添加下划线
下一篇:如何在uniapp中实现上滑隐藏控件的效果

发表评论

关闭广告
关闭广告