更新问题与描述:
已定位问题,同一页面A的不同参数页A1与A2,从A1跳入A2可以压入页面栈,并触发A2里的onShow,从A2页面返回(导航栏)到A1页面,无法再触发A1页面的onShow,
实测中,手机小程序在开过一次调试模式后,变成可以触发onShow,在删掉小程序重新进入,无法触发onShow.
需求:不开调试模式,能够同页面回退触发onShow
以下是原描述:
如题,我在登录页后跳到的首页(下称bug页)里的onShow里写了刷新函数,
目的:为了后台切前台和页面后退触发onShow时刷新页面,
结果:
1.在开发工具下表现正常;
2.删除小程序,然后扫码初次进入,走登录页流程,跳到bug页,bug页无刷新,点进子页,返回bug页面,无刷新,后台切前台,停留bug页无刷新;
3.打开调试模式,一切正常刷新;关闭调试模式,一切仍然保持正常;
4.删掉小程序,重新进入,bug页不刷新。
注:这里的不刷新就是没触发onShow,我做了验证,并不是刷新函数问题。
也就是说,没开过调试模式初次进入,bug页的onShow不触发,开过一次调试后,即使关闭调试,也都正常了。
请问调试模式如何能影响onShow的表现,调试模式下正常我根本没办法定位原因。
我已尝试了简单demo,没法重现这个bug
注:我的刷新函数,在onReady里初始执行一次,然后都在onShow里触发(做了处理,没有重复执行),我尝试过在onLoad和onShow里初次,但是图表渲染都会抖动,只有onReady里初次,才不会抖, 不管哪里初始化,都会有本提问的bug。
!!!我的另一个尝试!!!:
把bug页面的onLoad,onReady,onShow里所有逻辑全部注释掉,只在onShow里弹个框,bug如旧,并且表现出页面缓存!!!,
即删除小程序,扫码进入,重新正常走了登录流程,进入到bug页,理应是逻辑全被注释只在onShow里有弹框的空白bug页,却展示出了图表(缓存页),可以从该缓存页点进去子页面,返回该缓存页未触发空白bug页里的弹框,
打开调试模式,一切正常,bug页表现空白且正常弹框,关闭调试模式,仍然正常。这个时候不是应该有了空白页的新缓存吗?然而,删除小程序,重来一遍,仍然进入了有图表的那个顽固缓存页。
__
__
每删除小程序,重来一次,都会进入顽固缓存页导致bug,每开调试模式,就(临时)屏掉了缓存页,一切正常。
__
__
姐百思不得其解。。。