Здравствуйте. На странице нужно использовать 3 разных изображения и сделать для каждой заглушку до загрузки изображения. Способ ниже не работает, а, именно, изображение не отображается, что не так ?
const [isLoading, setLoading] = React.useState(false);
const handleOnLoad = () => {
setLoading(true);
}
{isLoading === true ? (<img onLoad={handleOnLoad } src="https://i.5sfer.com/post/postImage/thumb-8ipwnn.jpg"/>) : (<div>*Заглушка*</div>)}
*Так*function App() {
const [isLoading, setLoading] = React.useState(true);
const handleOnLoad = () => {
setLoading(false);
};
return (
<div>
{isLoading && <div>*Заглушка*</div>}
<img
alt="alt"
onLoad={handleOnLoad}
src="https://i.5sfer.com/post/postImage/thumb-8ipwnn.jpg"
/>
</div>
);
}
работает, но при медленном интернет-соединении заглушка отображается прямо над картинкой, пока она загружается, а я хотел бы отображать заглушку до полной загрузки картинки. Как это сделать ?