javascript - promises - Funciones ES2017 Async/await: ¿funcionan solo con promesas?
promesas javascript (2)
Sí, await
una promesa.
async function myFunction() {
let result = await somethingThatReturnsAPromise();
console.log(result); // cool, we have a result
}
http://pouchdb.com/2015/03/05/taming-the-async-beast-with-es7.html
Empecé a usar funciones async/await
await ES7 en mis aplicaciones js (transpiled by Babel).
Corrígeme si está mal, pero ¿funcionan solo con Promises? En caso afirmativo, esto significa que tengo que ajustar las funciones de devolución de llamada regulares en Promesas (lo que estoy haciendo actualmente por cierto).
La actual (y probable) propuesta asincrónica / espera aguarda promesas y desagües en algo como Promise.coroutine
de bluebird con la await
jugar el papel de yield
.
Esto tiene sentido, ya que las promesas representan un valor + tiempo y está esperando que ese valor esté disponible. Note await
también espera construcciones similares a promesas en todos los demás idiomas que lo incluyen como C # o Python (3.5+).
Tenga en cuenta que la conversión de API de devolución de llamada a promesas es muy fácil, y algunas bibliotecas ofrecen herramientas para hacerlo en un solo comando. Consulte Cómo convertir una API de devolución de llamada existente en promesas para obtener más detalles.