收藏
回答

页面跳转随使用次数增多白屏时间越来越长






如上图,我们的小程序从第一个页面跳转到(tap监听回调执行wx.navigateTo方法进行跳转)第二个页面,在测试中发现,如果多次点击,会导致跳转时间越来越长,在跳转的过程中会出现纯白页面不显示任何东西。

在程序里面log一下执行时间,如下图所示:

这是刚载入的时候执行的速度:点击跳转是在第一个页面执行点击,并记录时间。在第二个页面的onload事件和onshow事件分别取得时间与第一个页面点击时刻的时间间隔,分别只有200多与300多毫秒


下图是来回切换约30次从第一个页面与第二个页面后的结果log结果,加载时间越来越长,甚至都快到了两秒,这也导致我们的小程序在跳转的时候会有白屏现象。


请问如上问题一般是由于什么引起的?



补充问题描述:

根据反馈,重新进行log如下:

在点击监听事件开始记录时间,完成逻辑处理后调用wx.navigateTo之前log到此时执行时间。


在第二个页面的onload开始和结束log从点击开始时到这两个阶段执行时间。


在第二个页面的onshow开始和结束log从点击开始时到这两个阶段执行时间。


最后执行的效果如下:

第一次点击跳转时时间,都非常短:


跳转返回反复执行20次左右的时间记录:


期间onshow执行时间突然变成,且之后未见变短


继续反复跳转





观察结果,白屏是由于onload事件未执行导致,也就是在onload执行之前,跳转到新页面完全白屏。


继续补充进一步测试结果。


onload事件执行的开始时间仍然递增无法定位原因


onshow的开始时间到结束时间在一定数量访问次数后暴增的原因已经查明,在于我们调用了wx.getStorageSync()方法,该方法正常情况下执行时间约为200ms,但是在访问30次作用之后访问时间暴增至3000ms,(storage中没有任何数据更新,理论上每次的访问时间应该是一样的)


下面是代码片段


以下是getStorageSync执行时间


最后一次编辑于  2016-12-12
回答关注问题邀请回答
收藏

10 个回答

  • 洋葱头
    洋葱头
    2016-12-11

    请问,是在开发工具中也有这个问题么?

    2016-12-11
    有用
    回复 2
    • 2018-09-10

      开发工具暂时没有问题,真机上苹果手机好像比安卓严重

      2018-09-10
      1
      回复
    • Barbara.zhou
      Barbara.zhou
      2018-09-20

      我也是一样,开发工具上一点都没有问题,真机特别是iOS真的卡,而且时有时无


      2018-09-20
      回复
  • 工号 9527
    工号 9527
    2016-12-09

    是不是日志打太多了? 试下去掉调试的情况,会不会越来越慢。

    2016-12-09
    有用
    回复
  • 工号 9527
    工号 9527
    2016-12-09

    你的小程序叫什么?

    2016-12-09
    有用
    回复
  • 2018-08-16

    这个问题怎么解决的?性能差一点的真机上白屏要3-6秒

    2018-08-16
    有用
    回复
  • 2017-03-04

    你这个问题现在解决了吗?我也遇到了和你一样的问题,我是在查看图片日记详情 页面时白屏,我从列表页进入详情页,查看日记后返回,在多次跳转后,跳转速度变慢,最后出现白屏

    2017-03-04
    有用
    回复
  • 2017-03-04

    同问

    2017-03-04
    有用
    回复
  • 程成
    程成
    2016-12-13

    没有人知道是怎么回事吗?

    2016-12-13
    有用
    回复
  • 程成
    程成
    2016-12-12

    是的,在真机和开发者工具都有这个问题,真机更明显,也就是白屏时间长的很快,问题描述里面的截图都是在开发者工具里面log结果。

    2016-12-12
    有用
    回复
  • 程昊
    程昊
    2016-12-10

    现象: 在之前没有加入富文本解析的时候,也存在渲染越来越慢的情况,但是可能需要点击好几个日程之后才会逐渐体会到。加了富文本解析后,点击几个就会体会到变慢,并且是越来越慢。

    我们监测了一下富文本解析的时间,比较稳定,即使毫秒左右。


    怀疑是页面元素比较多,导致渲染页面时触发了一些问题。

    2016-12-10
    有用
    回复
  • 程成
    程成
    2016-12-10



    log都去掉了,还是一样的情况。。。。

    2016-12-10
    有用
    回复
登录 后发表内容