1.使用页面事件onBackPress事件监听返回键
onBackPress(e) {//e.from === 'backbutton' 说明如果点击的是物理返回键或导航栏的返回键就进行以下操作if (e.from === 'backbutton') {if (遮罩层是否隐藏) {//如果没隐藏//这里写让遮罩层隐藏的代码} else {//如果隐藏了//这里就写返回上一页uni.navigateBack()}//return true //返回值为true 时,表示不执行默认的返回(默认返回上一页),执行自定义的返回//如果要限制必须写成truereturn true;}},
2.大坑 监听不到返回
常规后退操作同Android,但是IOS还有个侧滑这个大坑,不会触发onBackPress,
再次确认了侧滑不触发onBackPress后。
3.1.解决大坑的方案1
禁用侧滑
{"path": "pages/xxx/xxx","style": {..."app-plus": {"popGesture": "none", // 禁用侧滑"bounce": "none" // 禁用上下拖动页面}}
},
3.2.解决大坑的方案2
逻辑思路:就是在他要返回的上一级页面进行操作,笨方法但是有效
onShow() {},//监听页面首次进入
//
//监听页面离开的话,下面两个必须同时使用,因为离开页面会有两种情况
onHide() {},//监听离开页面
onUnload() {},//监听页面销毁
/