File: /var/www/quadcode.com/src/utils/loadObserver.ts
const loadObserver = (handler: () => void, src = '') => {
let waiting = 0;
return (el: HTMLImageElement) => {
waiting++;
const path = el.src;
el.onload = function () {
waiting--;
if (waiting === 0) {
handler();
if(src !== '') {
// const timeout = setTimeout(() => {
// el.src = src;
// clearTimeout(timeout);
// }, 100);
el.src = src;
}
}
};
el.onerror = function () {
waiting--;
if (waiting === 0) {
handler();
}
};
el.src = path;
};
};
export default loadObserver;