在一次调用小程序api-wx.chooseImage,然后发现图片莫名其妙的不对,查了好久,才发现是选择图片后页面的onShow生命周期又执行了(我是在onshow请求的接口数据,导致数据刷新了)。
反正类似chooseImage的api,都会触发app.js的onShow、onHide和page的onShow、onHide(其实原因是,这类api调用的时候就相当于跳出了小程序,选择好后再进来,所以会触发onShow,onHide)
顺序是: page的onHide > app的onHide > app的onShow > page的onShow
官方的解释:
解决办法:
改成在onload里请求接口,如果非得在onShow里请求,就设置个变量,用来区分是不是调用了类似api