微信小程序 -- 左上角的页面返回拦截
前题:最近又遇到了这个问题,小程序需要在返回上一页之前判断当前页面是否做了数据操作,如果是则弹出弹窗提示,简单抄文档 介绍一下这两个方法:
方法一:
wx.enableAlertBeforeUnload 官方文档
在onLoad中声明这个方法,返回时页面自动弹出弹窗提示
如果你想根据数据动态显示,你可以在数据变化时声明wx.enableAlertBeforeUnload
启用,声明wx.disableAlertBeforeUnload
撤销
方法二
page-container 官方文档
这个类似于一个遮罩层,如果不想要遮罩可以用参数overlay或者css样式display:none去掉
wxml:
<text>target/target.wxml</text>
<page-container show="{{show}}" bind:beforeleave="beforeleave"></page-container>
js:
data: {
show:true
},
beforeleave:function(){
··· //这里做你的数据判断,
//由于page-container只显示一次,
//弹窗点击取消后如果想要再次显示只需要this.setData({show: true})即可
},
新手上路请多多关照,一起学习