Minimal zero dependency lazy load images solution with a simple React Hook for all images of an element.
Note that this package is using Intersection Observer API and won't do anything if this API isn't available on the user's browser.
Using NPM:
npm i react-use-lazy-images
Using Yarn:
yarn add react-use-lazy-images
import React from 'react'
import { useLazyImages } from 'react-use-lazy-images'
const STYLES = {
height: "5000px",
margin: '0 auto',
width: '100%'
}
export function OctoCats() {
const ref = useLazyImages<HTMLDivElement>({
placeholderSrc:
"https://octodex.github.com/images/vinyltocat.png"
});
return (
<div ref={ref} style={STYLES}>
<h1>React Use Lazy Images</h1>
<img
alt="Vinyltocat"
src="https://octodex.github.com/images/surftocat.png"
/>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<img
alt="Surftocat"
src="https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_92x30dp.png"
/>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<img
alt="Justicetocat"
src="https://octodex.github.com/images/justicetocat.jpg"
/>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<img
alt="Private Investocat"
src="https://octodex.github.com/images/privateinvestocat.jpg"
/>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<img
alt="Robotocat"
src="https://octodex.github.com/images/Robotocat.png"
/>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<h2>Some Elements Between</h2>
<img
alt="Spidertocat"
src="https://octodex.github.com/images/spidertocat.png"
/>
</div>
);
}
You can report bugs and issues here.
You can also send a PR if you feel like you can improve or fix something. Don't forget to write/update tests for your changes.
All things that you must learn about it to run on the road into the front-end world.
Personal website that written in React.js & Next.js, Also its user interface design is like apps
My learning repository, which also contains useful article URLs.
My Personal Site With React and Styled-components🧶
Dawn is a Dart Web Framework that lets developers to develop UIs with a widget model similar to Flutter. Dawn applications are compiled to JavaScript and are painted using HTML and CSS.
Linked Data Reactor (LD-R)
Toast component for React Native, supports Android, iOS and Web
Manage the Werewolf easier than ever