需求: 鍵盤彈起后隱藏fixed在底部的按鈕
遇到的問(wèn)題:
AB頁(yè)面onLoad中都調(diào)用了uni.onKeyboardHeightChange暖庄, A跳轉(zhuǎn)B再返回A,都操作了input的彈起和隱藏培廓,A頁(yè)面的uni.onKeyboardHeightChange失效春叫。
踩坑記錄: 第一反應(yīng)是AB頁(yè)面的兩個(gè)監(jiān)聽(tīng)沖突了,在B頁(yè)面的unOnload函數(shù)中注銷監(jiān)聽(tīng)uni.offKeyboardHeightChange暂殖,然鵝還是不行。
解決辦法和代碼實(shí)現(xiàn)
// onShow 監(jiān)聽(tīng)呛每, onHide注銷
onShow() {
uni.onKeyboardHeightChange(this.changeKeyboardUp)
},
onHide() {
uni.offKeyboardHeightChange(this.changeKeyboardUp)
},
總結(jié)
??uniapp和小程序會(huì)在頁(yè)面卸載的時(shí)候,把路由棧存留所有頁(yè)面onLoad中的onKeyboardHeightChange事件都自動(dòng)注銷掉洋腮,手動(dòng)注銷也是一樣的結(jié)果。