Desde NodeJS 7.6 las funciones asíncronas son compatibles sin un indicador. ¡Significa que puedes ejecutar código asíncrono por defecto! Eso también significa que Koa 2 es el predeterminado ahora!
Los generadores son útiles, pero ya no para middleware Koa.
- Los generadores se pueden encontrar en Array looping con for..of [1].
- Los generadores se pueden encontrar detrás de escena cuando se destruye [2] un iterable.
- Los generadores son abstracciones útiles para el diseño algorítmico.
Pero los generadores no son lo que necesita ahora si quiere usar la nueva versión de Koa, así que vamos a refactorizar algunos códigos.
Código como este:
- ¿Cuál es una buena manera de aprender Zhuyin?
- Cómo aprender a hacer ERD
- ¿Qué habilidades útiles se pueden aprender si alguien quiere seguir una carrera en los medios de comunicación en la India?
- ¿Qué idioma es más difícil de aprender, serbio o ruso?
- Cómo hablar más rápido en otro idioma.
app.use (función * (siguiente) {
console.log (‘Primero’)
ceder al lado
console.log (‘Tercero’)
})
app.use (función * () {
console.log (‘Second’)
this.body = ‘Hola Mundo’
})
Se convierte en
app.use (async (ctx, siguiente) => {
console.log (‘Primero’)
esperar siguiente ()
console.log (‘Tercero’)
})
app.use (async (ctx, siguiente) => {
console.log (‘Second’)
this.body = ‘Hola Mundo’
})
No es tan difícil ¿verdad? Pero si tiene problemas para entender las funciones asíncronas, le recomiendo que lea sobre Promesas [3] y luego funciones asíncronas [4].
Notas al pie
[1] para … de
[2] Tarea de destrucción
[3] Promesas de JavaScript: una introducción | Web | Desarrolladores de Google
[4] Entendiendo async y espera en JavaScript