Necesito que el controlador de eventos devuelva un valor en la función que inicia el evento en primer lugar, solo para devolver el valor que se recibirá solo en el controlador de eventos . Creo que debería haber una forma fácil de lograr esto o atacar el problema desde un ángulo diferente.Devuelve el valor del controlador de eventos a la función principal desde javascript
Lo que en realidad lo que necesito hacer es:
- crear un nuevo objeto img DOM para alimentar DataURL en (la DataURL proviene de canvas.toDataURL())
- img.onload le permitirá me devuelve el dataURL
Estoy usando jQuery si eso ayuda de alguna manera, pero no tiene que hacerlo, por supuesto.
En mi entender, no puedo confiar en que el img tenga los datos inmediatamente, y se siente estúpido usar tiempos de espera para esperar que el evento se dispare y usar alguna variable global, especialmente porque algunos podrían procesarse en paralelo .
Para obtener más antecedentes, esto es todo para cambiar el tamaño de las imágenes antes de cargarlas (multi-) con el motor HTML5.
Gracias incluso para la lectura, y para algún consejo por supuesto :)
, gracias, Igor
Nada, simplemente escribí el controlador de eventos y luego me di cuenta de que necesitaba el valor en la función "principal". Me doy cuenta de que puedo iterar con tiempos de espera, pero la intuición me dice que debería haber algo más inteligente :) –
Una biblioteca de promesas podría valer la pena investigar: https://github.com/kriskowal/q – thetallweeks
que es una muy antigua, pero podría ser un comentario útil para alguien que tropieza con esta pregunta. Uso Bluebird en estos días por promesas. Al revisar la pregunta me di cuenta de que se habían realizado muchos progresos, gracias @thetallweeks para la actualización del viernes)) –