Maison > interface Web > js tutoriel > Comment utiliser correctement Async/Await avec Try...Catch dans TypeScript ?

Comment utiliser correctement Async/Await avec Try...Catch dans TypeScript ?

Linda Hamilton
Libérer: 2024-12-11 02:11:10
original
320 Les gens l'ont consulté

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

Corriger la syntaxe Async/Await pour Try...Catch avec déclaration de variable

La nouvelle fonctionnalité Async/Await dans TypeScript permet un code plus plat , mais le placement des variables dans les blocs try...catch lors de l'utilisation de wait peut prêter à confusion.

Meilleur Pratique

Il est considéré comme une bonne pratique d'inclure plusieurs lignes de logique métier dans le corps d'essai, garantissant que les exceptions sont correctement détectées.

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

    // Business logic goes here
} catch (error) {
    console.error(error); // From creation or business logic
}
Copier après la connexion

Gestion des erreurs du Promesse

Si vous souhaitez uniquement détecter et gérer les erreurs de la promesse elle-même, vous en avez trois options :

  1. Déclarer la variable à l'extérieur et à la branche :

    • Attribuer une valeur par défaut à la variable dans le bloc catch.
    • Retournez plus tôt ou relancez une exception du bloc catch.
    • Définissez un indicateur pour indiquer si le bloc catch a été intercepté une exception.
    • Testez la valeur de la variable pour déterminer si elle a été attribuée.
  2. Test du type d'exception détectée :

    • Tester l'exception interceptée par rapport à une erreur spécifique tapez.
  3. Utilisez ensuite avec les rappels :

    • Écrivez deux fonctions de rappel, une pour le succès et une pour l'erreur, au lieu d'utiliser essayer/attraper.

Exemple :

await this.User.create(userInfo).then(createdUser => {
    // Business logic goes here
}, error => {
    console.error(error); // From creation
});
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal