react路由跳转
2023-06-13 09:11:46 时间
大家好,又见面了,我是你们的朋友全栈君。
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}/
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 "";
}
}
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/140807.html原文链接:https://javaforall.cn
相关文章
- react路由懒加载[通俗易懂]
- react路由权限设置
- 07-React Hooks(路由组件懒加载, Context上下文, 组件优化...)
- 08-React路由6.3.0(高亮, 嵌套, 参数传递... )
- react路由原理解析[通俗易懂]
- react路由配置
- django动态路由_网线无线转换器怎么用
- React Error: Failed at the xxx@0.1.0 start script 'react-scripts start'.
- React Router 路由
- React路由
- react源码分析:深度理解React.Context
- VUE 路由切换白屏的问题
- React魔法堂:echarts-for-react源码略读
- 什么是路由懒加载_react 路由懒加载
- 单臂路由实现VLAN间通信
- react源码分析:深度理解React.Context_2023-02-28
- 一个网络系统,哪有那么多动态路由,基本上都是静态路由!
- React路由传递params、search、state参数的相关处理
- react源码分析:深度理解React.Context_2023-02-07
- 使用两条宽带怎么组建局域网?两根网线如何组建局域网?两根宽带,双路由
- vue2路由
- 前端路由详解编程语言
- Linux系统下如何实现路由器参数修改(linux修改路由)
- 探索 Linux 路由的奥秘(查看路由linux)
- 改变Linux系统默认路由的方法(修改linux默认路由)
- 掌握Linux路由功能,让计算机网络更健壮(linux的路由功能)
- 对某创新路由的安全测试
- Linux网络路由配置实用指南,让你轻松搞定网络通信问题(linuxroute)
- 关于路由天线,厂商不会告诉你的那些事