vant dialog组件调用控制关闭beforeClose

468 阅读1分钟

vant dialog组件调用,手动控制关闭

wxml页面,注意z-inde与before-close写法

<van-dialog id="sizeDialog" 
z-index="10" 
show="{{showSizeDialog}}"
use-slot title="尺寸录入" 
show-cancel-button 
before-close="{{beforeCloseSize}}"
bind:confirm="handleSubmitSize" 
bind:close="handleCloseSize">

ts页面

1.方法声明在data内:beforeCloseSize: {}

2.方法定义在onLoad内部,确认方法内手动关闭

this.setData({
      beforeCloseSize: (action: any) => new Promise((resolve) => {
        setTimeout(() => {
          if (action === 'confirm') {
            // 点击确认,不关闭
            resolve(false)
          } else {
            // 点击取消,关闭
            resolve(true)
          }
        }, 0);
      })
    })