vue.js是一個流行的前端框架,常用于開發單頁應用程序(SPA)。如許多的異步JavaScript庫,vue.js使用Promise來處理異步操作。Promise有三種狀態:pending(進行中,還未確定),fulfilled(成功),和rejected(失敗)。當一個異步操作花費較多時間時,我們可以通過使用Promise的done()函數來告知用戶操作已經完成。
//示例1 new Promise((resolve, reject) =>{ setTimeout(() =>{ if (Math.random() >0.5) { resolve("操作成功!"); } else { reject("操作失敗!"); } }, 1000); }).done((result) =>{ alert(result); }); //示例2 let promise1 = new Promise((resolve, reject) =>{ setTimeout(() =>{ resolve("第一個操作成功!"); }, 1000); }); let promise2 = new Promise((resolve, reject) =>{ setTimeout(() =>{ resolve("第二個操作成功!"); }, 2000); }); Promise.all([promise1, promise2]).done((results) =>{ alert(results[0] + "\n" + results[1]); });
在示例1中,我們創建了一個Promise對象,并指定其執行操作。在1秒后,操作將成功或失敗,并使用done()函數來告知用戶操作結果。 done()函數只要Promise處于fulfilled狀態就會被調用。
示例2演示了使用Promise.all()來等待多個異步操作完成。此函數等待輸入的Promise數組中的所有操作完成后,返回它們的結果。我們在此調用done()函數來告知用戶操作結果。
下一篇vue domains