Я видел, что использование Promise может быть лучшим решением для асинхронной загрузки изображения.Я нашел хороший кусок кода в JavaScript для этого, но мне не удалось перевести его в JSweet.
function asyncImageLoader(url){
return new Promise( (resolve, reject) => {
var image = new Image()
image.src = url
image.onload = () => resolve(image)
image.onerror = () => reject(new Error('could not load image'))
})
}
// then use it like this
var image = asyncImageLoader(url)
image.then( res => {
console.log(res)
})