当前位置: 首页 > news >正文

uniapp - H5 在 UC 浏览器中返回上一页失效的解决方案

1. 前言

最近使用 uniapp 开发的 H5 在测试中遇到的问题:有A、B两个页面,反复从A页面进入B页面后,在B页面会存在返回函数失效问题。经过测试发现,如果反复进入B页面的参数相同,在第三次进入后,返回就会失效,不管是 uniapp 自带的头部导航,还是 uni.navigateBack API 都会失效,不能从 B页面 返回 A页面。目前测试其他浏览器未出现这种情况。

2. 问题分析

由于看不到报错,所以只是单纯的怀疑 UC浏览器 使用了类似微信小程序的页面栈的机制,一个就是页面栈存在个数的限制,当页面栈到了一个限定的数量,就会报错,导致不能进行返回。比如微信小程序的页面栈我记得之前限制是10个,如果你两个页面相互跳转,不进行删除的话,第五次跳转就不会进行跳转,可以参考【微信小程序页面5层限制的一种解决方案】。如果是这种问题,那么解决问题的办法就只能将返回方法重写成关闭当前页面再跳转回目标页面。第二种就是相同参数的页面 UC浏览器 可能直接缓存了相同参数的页面,然后在判断了反复进入相同页面参数相同的次数。如果有不对的地方,请指正,谢谢!因为本人没有单独对 UC 浏览器进行了解,肯定对他的机制理解有误。

3. 测试

  1. 给地址带不同参数,反复点击,发现切换着点击,就不会出现返回失效问题。
http://www.lryc.cn/news/431709.html

相关文章:

  • 利用KMeans重新计算自己数据集的anchor
  • 分类任务实现模型集成代码模版
  • 从Milvus迁移DashVector
  • 彻底改变计算机视觉的 Vision Transformer (ViT) 综合指南(视觉转换器终极指南)
  • vue3 v-bind=“$attrs“ 的一些理解,透传 Attributes相关说明及事例说明
  • 鸿蒙开发基础知识-页面布局【第四篇】
  • 用CSS实现前端响应式布局
  • 【docker】docker启动sqlserver
  • Python爬虫01
  • 关于vue项目启动报错Error: error:0308010C:digital envelope routines::unsupported
  • 随笔1:数学建模与数值计算
  • SDN架构详解
  • platform框架
  • 零成本搞定静态博客——十分钟安装hugo与主题
  • windows C++ 并行编程-转换使用取消的 OpenMP 循环以使用并发运行时
  • 经验笔记:跨站脚本攻击(Cross-Site Scripting,简称XSS)
  • 演示:基于WPF的DrawingVisual和谷歌地图瓦片开发的地图(完全独立不依赖第三方库)
  • 【C++】static作用总结
  • 视频提取字幕的软件有哪些?高效转录用这些
  • (4)SVG-path中的椭圆弧A(绝对)或a(相对)
  • docker国内镜像源报错解决方案
  • 《C++进阶之路:探寻预处理宏的替代方案》
  • 【综合案例】使用鸿蒙编写掘金评论列表案例
  • 【springboot】使用缓存
  • <Linux> 基础IO
  • OpenFeign的使用(一)
  • 【Python报错已解决】`AttributeError: move_to requires a WebElement`
  • 数据结构(邓俊辉)学习笔记】排序 2——快速排序:性能分析
  • 在postman中使用javascript脚本生成sign签名
  • 设计模式—2—单例模式