問題說明:
開發微信小程序的時候,發現安卓手機的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在安卓系統中執行兩次的問題