1***@qq.com
1***@qq.com
  • 发布:2025-03-19 22:05
  • 更新:2025-03-19 22:05
  • 阅读:15

【报Bug】严重BUG!!之前产品运行的好好的,最近更新后出现深层次(第4层)页面回调卡死现象

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

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

HBuilderX类型: 正式

HBuilderX版本号: 4.56

手机系统: iOS

手机系统版本号: iOS 17

手机厂商: 苹果

手机机型: IPhone11、IPhone14、IPhone15

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

App下载地址或H5⽹址: IOS应用商店搜索TW888,Android APP在华为应用市场有上架。

示例代码:
    console.log('2333asdas----------');  
        setTimeout(() => {  
        console.log('2333asdas--------sdf45--');  
        executor(resolve, reject)  
        console.log('2333asdas--------56sd--');  
    }, 100)  
    console.log('2333asdas----------');

操作步骤:

我们很多客户反映了这个问题,产品名字叫TW888。
登录进入APP后点击,车库门遥控 -> 任选一款 -> 点击烧写 -> 烧写页面(“加载数据”是此页面的onShow的逻辑,但是由于回调卡死了?所以就显示了个loading,直到不卡死才能进入此页面)

等个50s进来后,返回上级页面再进来,BUG又消失了。

预期结果:

流畅进入

实际结果:

卡死50s后才能进入

bug描述:

如图,当使用navigateTo跳转4次进入BUG页面后,发现BUG页面的回调函数调用极其慢(本来100ms应该调用的,结果用时50秒,如下图代码)。

用排除法做了些尝试,希望可以帮助大佬排查下问题:

  1. 把BUG页面移到首页进入,速度正常,无延时BUG
  2. 把BUG页面移到第二层(需要用两次navigateTo)进入,速度正常,无延时BUG
  3. 把BUG页面移到第三层(需要用三次navigateTo)进入,速度正常,无延时BUG
  4. 把BUG页面移到第四层(需要用四次navigateTo)进入,速度异常,延时超大(如果在生命周期onShow中进行了回调,则在回调响应前,页面都无法进入(例如使用了Promise))
  5. 自己重写了Promise,仍然无法立即回调,还是存在上面的BUG
  6. 当在BUG页面重新运行,或在BUG页面的上一个页面重新运行时,BUG消失(页面的层级改变了,bug消失)
  7. 使用relunch到转到页面,BUG依然存在

感觉是uniapp页面层级导致的问题,建议大佬排查下这块的代码有没有死循环之类的。这个BUG只会出现在首次进入页面的时候、以及当返回多层页面后再次进入(BUG页面被销毁,重新进入就会存在这个问题)。

2025-03-19 22:05 负责人:无 分享
已邀请:

要回复问题请先登录注册