vant组件弹出框默认关闭问题

我们项目中在使用van-dialog组件时有个问题是在点击确定或者取消会自动关闭弹出框,当然大多数时候我们需要进行一些异步的判断,在满足指定条件后才希望关闭弹框,那我们处理方法如下,我们要定义一个before-close属性

  <van-dialog use-slot title="同意书" async-close  before-close="{{beforeClose}}" class="tipDialog" show="{{ isShowToast }}" show-cancel-button bind:cancel="onClose" bind:confirm="continue" confirm-button-text="确定">
  </van-dialog>

然后在js代码中做如下处理,data里面定义,在onload函数里初始化,然后在我们定义的确定和取消的方法里通过手动改变isShowToast 的值来关闭弹出框

  data: {
    beforeClose: {},
  },
    onLoad: function (options) {
    this.setData({
      beforeClose: (action) => new Promise((resolve,reject) => {
        setTimeout(() => {
            // 拦截确认操作
            resolve(false);
        }, 0);
      })
    })
    }
      //同意须知书
  continue () {
    console.log(1234);
    if(this.data.radio=='1'){
      this.setData({
        isShowToast: false,
      })
      wx.navigateTo({
        url: `/register/pages/registerPayResults/signature?cardNo=${this.data.cardNo}`,
      })
    }else{
      wx.showToast({
        title: '请勾选同意须知',
        icon:'none'
      })
      return
    }
  },
  onClose() {
    this.setData({
      isShowToast: false,
    })
  },
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值