uni-app HBuilderX 3.1.13 云打包IOS wgt热更新后重启 点击任何非tab首页的页面都会自动返回首页

uni-app HBuilderX 3.1.13 云打包IOS wgt热更新后重启 点击任何非tab首页的页面都会自动返回首页

开发环境 版本号 项目创建方式
Mac 10.15.4 HBuilderX

https://apps.apple.com/cn/app/%E5%B0%8F%E7%86%8A%E7%9C%81%E7%9C%81/id1559671428

操作步骤:

  • wgt热更新后重启,点击任何非tab首页的页面,都会自动返回首页

预期结果:

  • 正常展示和操作

实际结果:

  • wgt热更新后重启,点击任何非tab首页的页面,都会自动返回首页

bug描述:

  • HBuilderX 3.1.13 云打包,IOS wgt热更新后重启,点击任何非tab首页的页面,都会自动返回首页

更多关于uni-app HBuilderX 3.1.13 云打包IOS wgt热更新后重启 点击任何非tab首页的页面都会自动返回首页的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复

碰到同样问题,莫名其妙强制回到首页

更多关于uni-app HBuilderX 3.1.13 云打包IOS wgt热更新后重启 点击任何非tab首页的页面都会自动返回首页的实战教程也可以访问 https://www.itying.com/category-93-b0.html


请问解决了吗,被困扰了

检查下是不是有延时回首页的操作

回复 c***@shuashua.vip: 我是想着监听返回,检查路由是不是栈顶,如果是,直接调用方法退出uni小程序。。。但是感觉这样做不太优雅。。。

这是一个典型的uni-app热更新后路由状态异常问题。在iOS平台wgt热更新重启后,应用的路由栈可能被重置,导致非tabbar页面无法正常保持。

主要原因是热更新重启时,应用的页面栈管理出现异常。建议:

  1. 检查热更新逻辑,确保在plus.runtime.restart()前正确处理应用状态保存
  2. 在App.vue的onLaunch中增加路由状态恢复逻辑
  3. 验证wgt包中的页面路径配置是否正确
  4. 尝试使用uni.reLaunchuni.navigateTo在更新后重新跳转到目标页面

可以尝试在热更新回调中记录当前页面路径,重启后自动跳转回原页面:

// 热更新前保存当前页面
const currentRoute = getCurrentPages()
// 更新完成后恢复页面
uni.reLaunch({
    url: currentRoute[0].route
})
回到顶部