需求:
在做手机端webapp时需要监听返回键,在某页面用户点击返回键时在beforeRouteLeave路由守卫中调用this.$dialog.alert('xxx)弹窗, 在用户确认后即可执行next(),否则执行next(false)
坑:
弹窗出现后会立马消失(闪了一下黑色)
原因:
弹窗的closeOnPopstate属性默认为true (在页面回退时自动关闭)
解决办法:
this.$dialog.alert({ closeOnPopstate:false }).then(() => { next() }).catch(()=>{next(false)})
网友评论