Bonjour.
Je travaille sur un bot Discord avec discord.js, et ce dernier utilise les Promises.
Je découvre donc les mots-clés await et async, et j'ai écrit ce code (log() étant un wrapper de console.log()) :
Code js : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 function registerGuild(guild) { let Promise1 = guild.members.fetch(userId); let Promise2 = guild.roles.fetch(); log(1); let promiseExecution = async () => { log(3); let promise = await Promise.all([Promise1, Promise2]); log(4); return promise; } log(2); promiseExecution() .then(data => {/**/}) .catch(console.error); log(5); }
Je m'attends à voir 1 2 3 4 5, mais je vois 1 2 3 5. Et effectivement c'est comme si la fonction s'arrête subitement à la ligne 8. Pourtant le log(5) est bien executé.
Je dois rater quelque chose mais je comprends pas.
Partager