问题说明:
开发微信小程序的时候,发现安卓手机的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在安卓系统中执行两次的问题