[英]Javascript Promise Wont Resolve
我已經編寫了以下代碼,但是它將拒絕而不是解決回調。
(function() {
var restante = 0;
'use strict';
function wait() {
return new Promise(function(done, reject) {
setTimeout(function() {
if (restante = 0) {
done();
} else {
reject();
}
}, 2000);
});
}
wait().
then(function() {
console.log("First Resolution");
}).catch(function() {
console.log("Error occured");
});
})();
為什么它每次都會拒絕?
在您的if
語句中應為:
if (restante == 0) {
done();
}
或 (更好的做法)
if (restante === 0) {
done();
}
您的完整代碼如下所示:
(function() {
var restante = 0;
'use strict';
function wait() {
return new Promise(function(done, reject) {
setTimeout(function() {
if (restante == 0) {
done();
} else {
reject();
}
}, 2000);
});
}
wait().
then(function() {
console.log("First Resolution");
}).catch(function() {
console.log("Error occured");
});
})();
條件語句需要==
(或===
),而賦值語句則包含單個=
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.