有没有办法在 onbeforeexit() 期间使用 sweetAlert.js 来确认而不是方法中的标准

Is there a way to use a sweetAlert.js for confirm instead of the standard in the method during onbeforeexit()

我正在尝试使用 sweet alert 来替代标准 JavaScript 确认对话框。我遇到的问题是,当我 return 承诺该方法不会等待响应时,它只是结束了游览。

我希望看到此方法接受承诺并等待响应。这可能吗?

我希望在单击 sweetAlert 模式上的“否”后,我会像使用此处所示的标准 javascript confirm('') 方法一样return进入导览

Introjs().onbeforeexit(function() {

        var alertText;

    if (instance.data.whatstep < steps.length){
        alertText = 'Are you sure you want to leave the tour early'
    } else {
        alertText = properties.alert_text
    }
    
    var r = confirm (alertText)
    if (r == true){
        console.log('exit')

        if ( instance.data.whatstep < steps.length ){
            console.log('leaving early')
            instance.triggerEvent("user_left_tour")

        } else {
            console.log('not leaving early')
            instance.triggerEvent("user_finished_tour")
        }
        
        return r
        
    } else {
        console.log('dont exit')
        return r
    }

});

这是我尝试使用的'onbeforeexit()'代码,但它不起作用

    Introjs().onbeforeexit(function() {
     const r = async function confirm(message) {
        return swal({
            text: 'are you sure',
            buttons: true
        });
    }
        console.log(r())
        return r()
    
    }).start();


我想这就是你想要的

Swal.fire({
  title: 'Are you sure?',
  text: "You won't be able to revert this!",
  icon: 'warning',
  showCancelButton: true,
  confirmButtonColor: '#3085d6',
  cancelButtonColor: '#d33',
  confirmButtonText: 'Yes, delete it!'
}).then((result) => {
  if (result.isConfirmed) {
    Swal.fire(
      'Deleted!',
      'Your file has been deleted.',
      'success'
    )
  }
}) 

这在 SweetAlert 2 中可用
这是相同 Link 的 link 您要查找的示例是 “确认对话框,带有附加到“确认”按钮的功能...”