0.0.4 • Published 8 years ago

fake-async v0.0.4

Weekly downloads
2
License
MIT
Repository
-
Last release
8 years ago

fake-async

Obsoleto

Este paquete fue creado para solventar ciertas necesidades específicas en su tiempo, sin embargo ahora se está reescribiendo vw, y se incluye dentro del core un completo runtime para ejecutar ECMAScript 6 y además ciertas funciones de ECMAScript 7 entre ellas: GeneratorFunction y Async/Await. También tendrá un soporte para Async Generators aunque aun no como parte de la sintáxis.

Por lo tanto se desaconseja el uso de fake-async

fake-async es un módulo creado para escribir código asíncrono de manera legible, y fácil de mantener

  • Evite múltiples niveles anidados cuando se programa con callbacks
  • Escriba código fácil de entender sin tener que bajar módulos que tienen que compilarse
  • Funciona sobre plataformas móviles con JxCore o vw

Installation independiente

$ npm install fake-async

Cómo usar

En CoffeeScript

async= (require "fake-async").create()
fs= require "fs"

## Para compilar en el mismo contexto es necesario colocar lo siguiente:
async.setevalfunction (str)->
    return eval str


f= async ()->
        try 
            dirs= await fs.readdir "/home"
            console.log dirs
            if dirs[0]
                dirs= await fs.readdir "/home/" + dirs[0]
                console.log dirs
        catch e
            console.log "Ocurrió un error"
            console.log e
            


f()

Escribir el código anterior sería equivalente a:

fs= require "fs"

f= ()->
	fs.readdir "/home", (err, dirs)->
            if err
                console.log "Ocurrió un error"
                console.log e
                return
            
            console.log dirs
            if dirs[0]
                fs.readdir "/home/" + dirs[0], (err, dirs)->
                    if err
                        console.log "Ocurrió un error"
                        console.log e
                        return
                    
                    console.log dirs
                
                
		

f()

Development

Producto desarrollado por VoxSoftware

License

MIT