首頁 > web前端 > js教程 > 如何在 TypeScript 中正確使用 Async/Await 和 Try...Catch?

如何在 TypeScript 中正確使用 Async/Await 和 Try...Catch?

Linda Hamilton
發布: 2024-12-11 02:11:10
原創
318 人瀏覽過

How to Correctly Use Async/Await with Try...Catch in TypeScript?

帶有變數宣告的 Try...Catch 的正確 Async/Await 語法

TypeScript 中新的 Async/Await函數允許使用更扁平的程式碼,但使用await時,try...catch區塊中變數的放置可以是

最佳實踐

在try 主體中包含多行業務邏輯被認為是最佳實踐,以確保正確捕獲異常。

try {
    const createdUser = await this.User.create(userInfo);

    // Business logic goes here
} catch (error) {
    console.error(error); // From creation or business logic
}
登入後複製

處理來自Promise

如果您只想捕捉並處理Promise 本身的錯誤,您有三個選擇:

  1. 在外部宣告變數並分支:

    • 為 catch 中的變數指派預設值區塊。
    • 提前回傳或從 catch 區塊重新拋出異常。
    • 設定一個標誌來指示 catch 區塊是否捕捉異常。
    • 測試變數的值決定是否已分配。
  2. 測試捕獲異常類型:

    • 針對特定錯誤類型測試捕獲的異常。
  3. 將then 與回呼一起使用:

    • 寫兩個回呼函數,一個是成功,一個是錯誤,而不是使用try/catch。

範例:

await this.User.create(userInfo).then(createdUser => {
    // Business logic goes here
}, error => {
    console.error(error); // From creation
});
登入後複製

以上是如何在 TypeScript 中正確使用 Async/Await 和 Try...Catch?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板