@shopgate/engage
Version:
Shopgate's ENGAGE library.
17 lines (16 loc) • 421 B
JavaScript
import { useState, useEffect } from 'react';
import { loadImage } from '@shopgate/pwa-common/helpers/html/handleDOM';
/**
* Load image hook
* @param {string} src .
* @returns {boolean}
*/
export function useLoadImage(src) {
const [loaded, setIsLoaded] = useState(false);
useEffect(() => {
if (src && !loaded) {
loadImage(src).then(() => setIsLoaded(true));
}
}, [loaded, src]);
return loaded;
}