„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie gehe ich mit asynchronen Rückrufen mit Await um?

Wie gehe ich mit asynchronen Rückrufen mit Await um?

Veröffentlicht am 11.11.2024
Durchsuche:792

How to Handle Asynchronous Callbacks Using Await?

Asynchrone Callback-Verarbeitung mit Await

In bestimmten Szenarien bei der Verwendung von Callbacks wie:

test() {
  api.on( 'someEvent', function( response ) {
    return response;
  });
}

Möglicherweise müssen Sie Asynchronität integrieren. Um diese Funktion asynchron zu machen und „await“ zu verwenden, müssen Sie zunächst sicherstellen, dass die Rückruffunktion (someEvent) ein Promise zurückgibt. Dies liegt daran, dass asynchrone Funktionen auf Promises angewiesen sind, um asynchrone Vorgänge abzuschließen.

Eine überarbeitete Version von api.on():

function apiOn(event) {
  return new Promise(resolve => {
    api.on(event, response => resolve(response));
  });
}

Mit dieser aktualisierten Funktion können Sie test() jetzt in eine asynchrone Funktion ändern:

async function test() {
  return await apiOn( 'someEvent' );
}

Asynchrone Funktionen geben jedoch auch Versprechen zurück, sodass der tatsächliche Ergebniswert von test() ein Versprechen ist, das innerhalb einer anderen asynchronen Funktion aufgelöst werden kann:

async function whatever() {
  // snip
  const response = await test();
  // use response here
  // snip
}
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3