前言
小程序使用服务需要用户绑定手机号,在进入页面时,判断用户是否授权,未授权的话,弹窗组件(自定义的)显示
onShow(){
let isBind = xxx
if(!isBind){
// 获取弹窗组件(自定义的)实例
this.bindTip = this.selectComponent('#bindTip')
// 调用弹窗组件的方法,显示组件
this.bindTip.showDialog()
}
}
开始
我们希望,用户未绑定手机号时显示绑定的弹窗,已经绑定时,不显示。点击【去绑定】 跳转到绑定手机号的页面,绑定成功后,调用wx.navigateBack({delta: 1})回到上一级页面(进入绑定手机号的入口不唯一)。但是呢,现在的问题是,绑定成功后,回退到上级页面还是会显示弹窗。
实践
一开始判断是赋值没有成功,在onShow()时isBind的值没有更新,但是呢,在onShow()中是可以输出的。所以值是可以获取到,说明在onShow中是没有调用显示弹窗的方法的。但是为什么会显示呢?
原因还是要回到我们自定义的弹窗本身,