swal.setDefaults 不是函数

swal.setDefaults is not a function

使用此代码,我试图显示所有排队的警报。

<?php 
    if(count($_SESSION["alerts"]) >= 1){
        print("    
        <script src='https://cdn.jsdelivr.net/npm/sweetalert2@9'></script>

        <script>
            
            var steps = [");

        for($i = 0; $i < count($_SESSION["alerts"]); ++$i){
            $title = $_SESSION["alerts"][$i][0];
            $message = $_SESSION["alerts"][$i][1];
            $icon = $_SESSION["alerts"][$i][2];
            print("
                    {
                        title:'$title',
                        icon: '$icon',
                        text: '$message',
                    },
            ");
        }

        print("
            ];
            
            swal.setDefaults({
                confirmButtonText: 'Ok',
                showCancelButton: false,
                animation: true
            });


            swal.queue(steps);

            </script>
        ");
    }
    $_SESSION["alerts"] = null;
    $_SESSION["alerts"] = array();        
?>

但是如果我在队列中使用警报调用它,那么我会在 chrome 控制台中看到一条错误消息:swal.setDefaults is not a function

如何使此代码按预期工作?

swal.setDefaults({ }) 在 v8 中被弃用并在 v9 中被移除。使用 swal.mixins({...options});

有关更多信息,请参阅文档。 https://sweetalert2.github.io/#mixin;

这里也是 git 集线器参考 https://github.com/sweetalert2/sweetalert2/issues/530