一、小程序返回时弹窗
有这样一个需求:小程序点击左上角返回按钮时弹出一个判断框,原本觉得很简单,监听一下左上角的点击事件不就完了吗!想象很丰满现实很骨感,官方文档没有这个事件。。。后来想着可以在生命周期(onUnload())里面手动弹出confirm不就完了吗
onUnload(){
wx.showModal(Object object)
}
但是后来发现,这个生命周期是在页面返回之后执行的。。。这可苦了我了。。。绞尽脑汁。。。查了好多,翻了好久文档终于让我找到了解决方法
微信小程序提供了这样一个API:wx.enableAlertBeforeUnload(Object object),开启小程序页面返回询问对话框
注意:这个方法只能在onShow或onLoad里面调用
onShow(){
wx.enableAlertBeforeUnload(Object object)
}
这样返回弹出对话框就解决了
二、关闭小程序返回弹窗
与以上同一个模块的需求,提交成功自动返回上一页面,这好办用wx.navigateBack()不就完了,很快bug找上门了,原来之前的开启小程序页面返回询问对话框也会影响到这个API。。。于是在翻阅了百度和微信文档之后让我找到了解决办法。。。提交的时候把开启的框关了不就完了
还是用微信的API:关闭小程序页面返回询问对话框
wx.disableAlertBeforeUnload(Object object)
注意:这两个方法只能在真机上看到效果
网友评论