1
我有一個等待用戶輸入的自定義確認對話框。我把它包裝在一個承諾中。完成承諾沒有拒絕/解決?
當用戶選擇「是」替代我resolve
的承諾。
然而,當用戶選擇no
這不是一個真正的錯誤,但更多的是不應該執行下一個任務。
我該如何處理該承諾的情況?簡單地不調用解決方案/拒絕還是有更好的方法?
我有一個等待用戶輸入的自定義確認對話框。我把它包裝在一個承諾中。完成承諾沒有拒絕/解決?
當用戶選擇「是」替代我resolve
的承諾。
然而,當用戶選擇no
這不是一個真正的錯誤,但更多的是不應該執行下一個任務。
我該如何處理該承諾的情況?簡單地不調用解決方案/拒絕還是有更好的方法?
您可以解析一個值並在之後檢查該值。
new Promise((resolve, reject) => {
const userInput = confirm('Do you want to continue?');
resolve(userInput);
}).then(input => {
if(input) {
// Do something
} else {
// Do something else
}
});
嗯,在我看來'no'意思是「拒絕」,「拒絕」並不一定意味着錯誤,這可能意味着下一個行動不應該發生。 – Cristy
'只是不調用解決方案/拒絕'將意味着連鎖攤位!你可以拒絕,用聰明的代碼你可以做你需要的東西 –
當用戶選擇「yes」時,你也可以「解析」並傳遞一個布爾值,「true」和「false」爲「no」。 – Arg0n