如何解决单击 Swal 取消按钮时重定向,但在 Swal 外部单击时重定向
我尝试使用 result.dismiss
、result.isdismissed
和 result.isDenied
,但我似乎无法足够具体地检查用户是否在 swal 消息之外单击。
这是我的代码:
Swal.fire({
position: "top-end",title: `${name} successfully added to cart!`,icon: "success",showCancelButton: true,cancelButtonText: "Continue shopping",cancelButtonColor: "green",confirmButtonText: "Go To Cart",confirmButtonColor: "blue",}).then((result) => {
if (result.isConfirmed) history.push("/cart");
else if (location.pathname == "/" && !result.dismiss)
history.push("/products");
});
谢谢!
解决方法
您可以使用取消按钮通过检查结果 .dismiss
reason 是否等于 Swal.DismissReason.cancel
来检查警报是否已解除:
Swal.fire({
position: "top-end",title: "Item successfully added to cart!",icon: "success",showCancelButton: true,cancelButtonText: "Continue shopping",cancelButtonColor: "green",confirmButtonText: "Go To Cart",confirmButtonColor: "blue",}).then((result) => {
if (result.dismiss === Swal.DismissReason.cancel) {
console.log("Redirect for cancel");
} else {
console.log("Redirect for non-cancel dismissals");
}
});
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@11.0.16/dist/sweetalert2.all.min.js"></script>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。