Attente de chaînes de promesses : pièges potentiels
Il a été déconseillé d'attendre des chaînes de promesses dans certains contextes, en particulier dans les applications Angular 6. Cette approche apparemment redondante soulève des questions sur ses conséquences potentielles.
Le problème du chaînage de promesses
L'extrait de code suivant illustre l'anti-modèle en question :
await someFunction().then(result => { console.log(result); });
Ce code enveloppe inutilement la promesse renvoyée par someFunction() dans une chaîne Promise.then avant d'attendre
Solution alternative
Une approche plus concise et plus simple consiste simplement à attendre directement la promesse :
const result = await someFunction(); console.log(result);
Pourquoi éviter Promise Chaining ?
Bien que les deux extraits aboutissent au même résultat, le premier invite à la confusion et au potentiel bugs :
La cohérence est la clé
Pour le Par souci de cohérence et d’évitement des pièges potentiels, il est conseillé de préférer l’approche la plus simple consistant à attendre directement les promesses. Cela correspond à la règle générale consistant à préférer wait à then dans les fonctions asynchrones.
Exception à la règle
Bien que wait soit généralement préférable, il peut y avoir des exceptions. Dans certains cas de gestion d'erreurs, le chaînage de promesses peut fournir une approche plus propre et plus concise.
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!