JSFiddle - React, Tailwind, and code Playground
by gianlucaguarini
JavaScript
Object.defineProperty(Object.prototype, 'promise', {
get: function() {
return new Proxy({}, {
get: (target, name) => {
return new Promise((resolve) => {
this[name] = resolve
})
}
})
},
configurable: true
})
var img2 = new Image()
img2.promise.onload.then(() => console.log('Image loaded!'))
img2.crossOrigin = 'anonymous'
img2.src = 'https://placekitten.com/200/300'
var img = new Image()
img.promise.onerror.then(() => console.log('oh please! I can\'t load this!'))
img.src = 'trump.jpg'
Promise.all([
img.promise.onerror,
img2.promise.onload
]).then(() => {
console.log('Rock and roll!')
})