0.3.1 • Published 5 years ago

react-lazy-media v0.3.1

Weekly downloads
1,609
License
MIT
Repository
github
Last release
5 years ago

react-lazy-media

npm Build Status GitHub license

Lazy load image, picture, video, and iframe media React components. react-lazy-media uses yall-js under the hood to handle lazy loading.

Polyfilled with the Intersection Observer Polyfill

Installation and Usage:

npm i -S react-lazy-media

Include the Component:

import React from 'react'
import { LazyImage } from 'react-lazy-media'

class Component extends React.Component {

  render() {
    return (
      <LazyImage
        classes={['myLazyImage']}
        src={'./hero.png'}
      />
    );
  }
}

You can import LazyImage LazyVideo LazyIframe LazyBackground LazyWebpPicture respectively.

Component Examples

Common

The following APIs are shared by every component.

NameTypeDefaultDescription
classesArray[]Additional CSS classes (in addition to 'lazy' for the media element (img, video, iframe)
idstring''id for the media element (img, video, iframe)

LazyImage

Lazy loads an image element. Supports loading a low-quality image placeholder.

NameTypeDefaultDescription
altstring[]Alt text for the img
srcstring (Required)N/A - Requiredsrc for the img
widthstring''width for the img
heightstring''height for the img
lqipstring''src for a loq quality image placeholder. will always be loaded and then replaced with actual src img

LazyBackground

Lazy loads a background image for a div.

NameTypeDefaultDescription
srcstring (Required)N/A - Requiredsrc for the background image

LazyVideo

Lazy loads an HTML5 video.

NameTypeDefaultDescription
srcstring (Required)N/A - Requiredsrc for the video
widthstring''width for the video
heightstring''height for the video
posterstring''poster image for the video (before it loads/plays)
controlsbooltruewhether or not the video should display controls
preloadboolfalsewhether or not the video should be preloaded
autoplayboolfalsewhether or not the video should autoplay
loopboolfalsewhether or not the video should loop
mutedboolfalsewhether or not the video should be muted

LazyIframe

Lazy loads an iframe.

NameTypeDefaultDescription
srcstring (Required)N/A - Requiredsrc for the iframe

LazyWebpPicture

Lazy loads an HTML5 picture. Attempts to load a Webp version of the asset first, and falls back to original src. Most of the props are passed down to the LazyImage child of this component.

NameTypeDefaultDescription
altstring[]Alt text for the img
srcstring (Required)N/A - Requiredsrc for the img
widthstring''width for the img
heightstring''height for the img
lqipstring''src for a loq quality image placeholder. will always be loaded and then replaced with actual src img
webpstring''The webp src for the img. Will suffix the src prop of not provided (e.g. hero.png => hero.png.webp)

Todo

[] Add more configurable component: LazyPicture [] Add code example for each component in readme

0.3.1

5 years ago

0.3.0

5 years ago

0.2.7

5 years ago

0.2.6

5 years ago

0.2.5

5 years ago

0.2.4

5 years ago

0.2.3

5 years ago

0.2.2

5 years ago

0.2.1

5 years ago

0.2.0

5 years ago

0.1.2

5 years ago

0.1.1

5 years ago

0.1.0

5 years ago