1***@qq.com
1***@qq.com
  • 发布:2025-02-18 15:40
  • 更新:2025-02-18 15:40
  • 阅读:60

【报Bug】nvue混合vue 偶发页面无法返回,返回键失灵

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: windwows11

HBuilderX类型: 正式

HBuilderX版本号: 4.52

手机系统: Android

手机系统版本号: Android 14

手机厂商: 华为

手机机型: 所有机型

页面类型: nvue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

没有报错信息,找不到出错原因。

预期结果:

正常返回上一页

实际结果:

极低的概率会无法返回上一页
返回键(安卓滑动返回)失灵,导航按钮返回失灵,navigateBack方法返回失灵。

bug描述:

BUG自2022年就有,非纯NVUE项目,未启用fast启动模式。
BUG偶发概率很小,可能几千次也触发不了一次。但一旦触发则无法返回上一页,包括:

  1. 安卓滑动返回失效。
  2. 非自定义导航的系统返回按钮,点击失效
  3. 自定义导航时。使用uni.navigateBack返回失效,且在complete中捕获不到任何日志
  4. onBackPress函数不触发,在函数内编写console.log(),无法执行
  5. 失灵的页面,可以通过getCurrentPages()获取到页面堆栈,堆栈内包含上一页的路由。
    BUG 无法手动复现,与代码无关,当页面代码在1000行以上时,这个页面会有很大概率触发这个BUG,但通过控制台看不到任何报错信息。
    当使用uni/nvue 调试时,BUG 几乎不会发生,可能是因为跳转页面过程较慢,渲染过程较慢,所以避免了发生。
    当触发BUG后,页面中的其他事件依然可以执行,也可以跳转到其他页面,当跳转到其他页面,再返回这个页面时,BUG会消失,可以正常返回上一页。
    由于没有报错信息,很难发现BUG原因,也无法提供最小可复现代码。
2025-02-18 15:40 负责人:无 分享
已邀请:

要回复问题请先登录注册