【发布时间】:2019-09-08 14:01:21
【问题描述】:
我正在尝试在关闭 SweetAlert 之前验证 email 字段,但由于某种原因,SweetAlert 在捕获错误后正在关闭:
Swal.fire({
title: title,
html: template,
preConfirm: function (email) {
email = '';
return new Promise(function (resolve, reject) {
setTimeout(function () {
if (email === '') {
alert("err");
reject('err')
} else {
resolve()
}
}, 1000)
}).catch(err => alert("error catched"))
},
});
如何防止SweetAlert 模态在捕获错误时关闭?
谢谢
【问题讨论】:
-
也许尝试删除
reject之前的alert("err");,因为它会发出双重警报? -
@pistou 同样的问题,sweetalert 正在关闭,错误仍然出现
-
对我来说似乎很奇怪你要返回一个 Promise,但是你返回它时附加了一个
.catch。尝试只返回承诺? -
@AndrewKoster 我兑现承诺,也许你的意思是别的?我的代码是:
return new Promise(function (resolve, reject) { -
我重新阅读了
Promise的文档,发现您的那部分代码没有任何问题。请参阅我的答案以获取实际解决方案。
标签: javascript jquery sweetalert2