reactjs - 在第一次 history.push('xxx') 之后,props.history.goBack() 在 iOS 微信浏览器中不起作用
问题描述
这种行为我测试了很多次,第一次发现这个bug只在iOS微信中history.push()
例如:在主页中,我单击一个链接(使用history.push
)并跳转到页面 A,但后退按钮(使用props.history.goBack()
)不起作用。当我单击history.push
A 页面中的链接(使用 )时,我跳转到 B 页面,B 页面中的后退按钮可以返回 A 页面,现在 A 页面中的后退按钮工作正常(意味着我可以返回主页)。
Android微信中没有这种奇怪的行为。
在 iOS 微信中,你必须跳 2 次才能有正常行为。如果没有第二次跳跃操作,您将无法通过第一次跳跃返回。
HashBrowser 和 BrowserRouter 都有这个错误/错误行为。
下面是我的关系包
"react": "^16.11.0",
"react-dom": "^16.11.0",
"react-router-dom": "^5.2.0",
解决方案
替换history.goBack()
为history.go(-1)
应该为您提供相同的功能,并且在 Android 和 Safari 中都可以使用。
推荐阅读
- c# - 相机Unity拍摄的图像的透明度
- php - Symfony -> 更新时覆盖现有实体
- xamarin - 使用来自 UI 和后台服务的相同领域
- c# - 如何将文本框的值获取到 Xtrareport
- ubuntu - 在 Ubuntu 上安装 Confluent 无法正常工作
- c++ - 如何在 Eclipse 4.7.3a 中抑制“语法错误”
- c# - Get raw decodated name of IDiaSymbol
- sql - 消息表中的复杂 SQL 选择查询
- android - 当我单击线性布局更改背景时,在 Recyclerview 中选择了两个项目
- node.js - Giving resources to a cli user via gulp