uniapp开发H5及app监听返回事件(以及监听不到的处理方法)
·
1.使用页面事件onBackPress事件监听返回键
onBackPress(e) {
//e.from === 'backbutton' 说明如果点击的是物理返回键或导航栏的返回键就进行以下操作
if (e.from === 'backbutton') {
if (遮罩层是否隐藏) {
//如果没隐藏
//这里写让遮罩层隐藏的代码
} else {
//如果隐藏了
//这里就写返回上一页
uni.navigateBack()
}
//return true
//返回值为true 时,表示不执行默认的返回(默认返回上一页),执行自定义的返回
//如果要限制必须写成true
return 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() {},//监听页面销毁
/
更多推荐
已为社区贡献6条内容
所有评论(0)