问题说明:
开发微信小程序的时候,发现安卓手机的onShow会被触发两次,但在IOS手机中则没有碰到这样的情况。
解决方案:
一、将方法放到onload中执行
二、设置开关
若方法必须要放到onShow中执行,则可以通过设置开关来避免这个问题
1、在data中定义一个Boolean值
hadOnShow: false
2、在onshow函数中判断这个Boolean值
onShow: function () {
let _this = this
if (_this .data.hadOnShow) {
return
}
_this .setData({
hadOnShow: true
})
console.log("onshowing")
_this .getOrderList();
},
这样就避免了onShow在安卓系统中执行两次的问题