路由跳转后需要两次调用goback才能正常返回
问题描述
react中使用router.push("/createForm")
进行路由跳转,表单创建完成后,使用router.goBack()
返回页面。
创建页面可以正常返回列表页面,但是编辑页面需要调用两次router.goBack()
才可以返回列表页面。
编辑页面和新增页面的跳转路由地址相同,跳转方法相同
技术栈:react+umi+dva+antd
问题解决过程
step 1
多次操作两个页面观察不同之处,
发现编辑页面的路由地址为http://localhost:8000/exposure-draft-create#
新增页面的路由地址为http://localhost:8000/exposure-draft-create
编辑页面地址后多了一个#
号,第一次调用router.goBack()
,#
号去除,第二次调用router.goBack()
正常返回了列表页面
step 2
探寻#
号的来源
- 搜索引擎搜索“router #”,无结果
- 代码中寻找跳转编辑页面和新增页面的不同之处
- 两个页面跳转路由地址相同(控制台打印路由均无
#
号),跳转方法使用了相同的函数 - 寻找调用跳转函数的HTML
跳转编辑页面
<div className={styles.details}><span><aonClick={() => this.toEditPage(id, conferenceType)}href="#"style={{ padding: 0 }}>编辑</a></span></div>
跳转创建页面
<div className={styles.createMeeting}><Button type="button" onClick={() => this.toCreatPage()}>{formTestObject.buttonText}</Button>
</div>
问题出现原因
使用a标签添加属性href="#"
跳转路由地址会加上#
号
问题解决方案
去除’href="#"‘属性
路由跳转后需要两次调用goback才能正常返回相关推荐
- VUE路由跳转后自动刷新一次页面
VUE路由跳转后自动刷新一次页面 我们在前端开发时有时会遇到一些问题,暂时找不到解决办法只有靠刷新才能救一下.可是又不能每次都手动刷新.在网上找了很久的自动刷新办法,发现大部分都是路由跳转类的刷新,和 ...
- 解决vue单页路由跳转后scrollTop的问题
作为vue的初级使用者,在开发过程中遇到的坑太多了.在看页面的时候发现了页面滚动的问题,当一个页面滚动了,点击页面上的路由调到下一个页面时,跳转后的页面也是滚动的,滚动条并不是在页面的顶部 在我们写路 ...
- Vue导航点击路由跳转后样式不变
Vue导航点击路由跳转后样式不变 <template><ul><li :class="{active:isActive==1}" @click=&qu ...
- vue二级路由跳转后外部引入js失效问题解决方案
vue二级路由跳转后外部引入js失效问题解决方案 参考文章: (1)vue二级路由跳转后外部引入js失效问题解决方案 (2)https://www.cnblogs.com/LittleT/p/9077 ...
- vue路由跳转后,刷新指定页面。
做项目遇到一个坑:A页面带参跳转到B页面,第二次跳转时的参数与第一次时的参数不同,但是后台查询时还是使用的第一次的参数.需要手动刷新之后,才会使用第二次参数. 鉴于时间原因直接使用刷新页面监听路由的方 ...
- vue路由切换组件没有加载_vue-router 路由跳转后没有加载组件
router.js 路由部分 export const normalRouter = { path: '/', meta: { login: false }, component: () => ...
- vue router 跳转php,vue路由:路由跳转后怎么知道切换到那个router-view中
应用场景 首浏围开幸,业来很广例量站标闪择以近览着发次尝试用vue 2.x重构传统页面.使用vue init webpack xxx 创建项目友持都发很秀框事,应编差里互是过是来本商理类了如则处果.展 ...
- framework7 1.3.5 路由跳转后DOM失效问题
再这个版本的7会存在一个问题,那就是loadpage到指定页面后才做其中的DOM比如DIV里面的text或者HTML,虽然控制台会显示改变后的值但是页面上却还是原值,这时候需要改变方法使用reload ...
- 路由跳转时的页面状态保存
前言 我们在开发网页时,经常会遇到一种情况--在一个页面对页面初始状态进行了修改(如已请求到的数据.表单数据.滚动高度等等),跳转到另外一个页面之后再返回到原页面(路由回退),原页面需要保持原先的状态 ...
最新文章
- Android ndk 安装教程 以及环境变量配置
- win 10无法启动print spooler服务,提示1068依赖服务或组无法启动
- 一次性通过软考网工方案
- 判断浏览器是否为手机端 is mobile
- python 实现统计ftp服务器指定目录下文件夹数目、文件数目及所有文件大小 本次主要为满足应用方核对上传到ftp服务器的文件是否缺漏。 主要要求:指定目录下,文件夹数目/文件数目/所有文件大小
- Visual C++ 基础数据类型的转换
- 自己常用的wireshark过滤条件
- 位置编码在注意机制中的作用
- 一文搞懂软件测试,完整总结软件测试基础知识
- pdf嵌入字体(不用adobe pdf打印机)
- 求5的阶乘和1-5的阶乘和
- 哈夫曼编码问题(贪心算法)
- 已安装pywinrm,仍报错winrm or requests is not installed: No module named winrm
- vue项目中样式重置 自动注入less
- 腾讯qlv格式转换mp4为何转换后只有音频
- 自媒体全是带节奏的标题党,不是创作者不行,而是用户们想看
- 宠物拍照app开发,把握萌宠流量
- 决战世界杯——Python预测球赛胜负
- 10270 : 青蛙的游戏
- Au CC如何将文件导入文件面板?
热门文章
- 允许使用计算机的软件,解决win10“你的电脑设置仅允许安装来自应用商店的应用”的方法...
- 1400——489C,520B,279B,479C
- ubuntu系统无wifi适配器 找不到wifi问题解决
- 实用技巧(二)——文本工具、自由变换
- Victor ti99不错
- Field eFaultPriorityService in com.ect.emes.admin.restapi.AlarmRestApi required a bean of type 解决方法
- 水准测量的各种数字考点
- 拿到外卖后秒退单,一连12天吃霸王餐的女子栽了!
- 在线剪切板,一款高效方便记录剪切板内容的在线工具
- Mac设置顶部菜单栏技巧?