收藏
回答

navigateTo方式,同一页面入栈2次,后退到第一次的页面,页面空白。

框架类型 问题类型 终端类型 微信版本 基础库版本
小程序 Bug 客户端 7.0.4 2.6.0

同一页面入栈2次(或多次后),后退到第一次的页面,页面出现空白。

场景

通过 navigateTo 方式,从A1(id:1)页面进入B页面,再进入A2(id:2)页面,这时后退到B页面,再后退到A1页面就会出现页面白屏的现象。



发现

通过详细研究,在前进的时候,A1和A2页面始终共享的一个页面实例(存放数据),但是在页面栈中又是2个页面,

通过开发工具发现,在第一次A2后退的时候,A页面的实例(数据)就被卸载了,到了A1页面就无数据可显示了,页面出现空白。



尝试

1、在后退的时候,将页面栈中所有同一route的页面都清除,但是尝试失败,貌似无法操作,另外官方也不推荐操作页面栈。

2、在页面onShow的时候重新获取数据,但是测试发现,在后退到A1页面,页面会卡很久,才出现onShow方法的调用,而且参数还是A2页面的参数。



希望

官方能给一个解决方案,相信此问题不止我一个人遇到。


回答关注问题邀请回答
收藏

1 个回答

  • 社区技术运营专员-小柿子
    社区技术运营专员-小柿子
    2019-06-10

    麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)

    2019-06-10
    赞同
    回复 5
    • Joe
      Joe
      2019-10-14
      业务代码中也出现了这个问题,不过我写了一个简单的代码片段没有复现,但是开发者工具会有些异常。
      在开发者工具 上 navigateTo 之后 再返回,控制台中的 AppData 一栏 下面会变成空白。
      代码片段:https://developers.weixin.qq.com/s/DV9jt7mC7scZ
      2019-10-14
      回复
    • 社区技术运营专员-小柿子
      社区技术运营专员-小柿子
      2019-10-14回复Joe
      工具版本是?
      2019-10-14
      回复
    • Joe
      Joe
      2019-10-14回复社区技术运营专员-小柿子
      工具版本是 1.02.1910102。
      另外这个数据异常问题找到原因了,是使用的wepy框架的问题,原生的是正常的。
      2019-10-14
      回复
    • 社区技术运营专员-小柿子
      社区技术运营专员-小柿子
      2019-10-14回复Joe
      wepy框架的问题我们这边无法处理的
      2019-10-14
      回复
    • Joe
      Joe
      2019-10-14回复社区技术运营专员-小柿子
      明白,我这边自己想想办法。可以看下开发者工具的问题
      2019-10-14
      回复
登录 后发表内容